环境:SQL 2005
本人菜鸟刚刚学,请您给出规范写法的代码,最好能有注解。主表:[主表]ID   名称    地区  标签
-----------------------------------
1   天道酬勤   4   1 2 3 5
主表引用的子表(3种类型):1.地区子表(通过1个ID号溯源)
地区子表采用[父级ID]逆向溯源形式实现无限级别扩展,结构如下:子表1:[地区]ID     父级ID     名称
-------------------------
1    0     中国
2    1     江苏
3    2     盐城
4       3         滨海
2.标签字段(数组形式替换对应的值)
下面是标签字段对应的子表数据结构。子表2:[标签]ID   标签名称
-------------------------
1   SQL
2   视图
3   函数
4   CSDN
5   求助3.多行符合条件的数据(函数判断)
下面是标签字段对应的子表数据结构。子表3:[文章]ID  用户ID   标签名称    链接    创建时间
--------------------------------------------------
1   1     文章标题1   /url/1/  07-10-24 20:05:37
2   2     别人的文章   /url/32/  07-10-24 22:26:03
3   1     文章标题2   /url/2/  07-10-24 21:32:57
4   1     文章标题    /url/5/  07-10-24 23:57:00
5   3     测试数据    /url/3/  07-10-24 19:00:01视图实现效果如下:视图: [视图1]ID   名称    地区          标签          最新发表
--------------------------------------------------------------------------------------------------------------
1   天道酬勤  中国 江苏 盐城 滨海   SQL 视图 函数 求助   /url/1/┆文章标题1┃/url/2/┆文章标题2┃/url/5/┆文章标题

解决方案 »

  1.   

    邹建老师,其他达人,帮个忙吧,刚学不懂,求使用T-SQL的Create View语句创建上例视图的代码。万分感谢!
      

  2.   

    CREATE VIEW e_w AS
        SELECT 职工号,仓库号
        FROM 职工这是标准格式,这题目我做不出来
      

  3.   

    SET QUOTED_IDENTIFIER ON 
    GO
    SET ANSI_NULLS ON 
    GOCREATE VIEW dbo.VIEW1
    AS
    SELECT dbo.A.A1
    FROM dbo.A INNER JOIN
          dbo.B ON dbo.A.A1 = dbo.B.B1GO
    SET QUOTED_IDENTIFIER OFF 
    GO
    SET ANSI_NULLS ON 
    GO其实你用企业管理器用鼠标画一个视图,然后进查询分析器里面右点视图然后选新窗口中编写对象脚本 ->创建 
    就可以了,不单是试图,表,存储过程之类的都可以
      

  4.   

    mian表
    ID   名称    地区  标签
    -----------------------------------
    1   天道酬勤   4   1 2 3 5space表
    ID     父级ID     名称
    -------------------------
    1    0     中国
    2    1     江苏
    3    2     盐城
    4       3         滨海
    标签表
    ID   标签名称
    -------------------------
    1   SQL
    2   视图
    3   函数
    4   CSDN
    5   求助视图
    ID   名称    地区          标签          最新发表
    --------------------------------------------------------------------------------------------------------------
    1   天道酬勤  中国 江苏 盐城 滨海   SQL 视图 函数 求助   /url/1/┆文章标题1┃/url/2/┆文章标题2┃/url/5/┆文章标题文章表
    ID  用户ID   标签名称    链接    创建时间
    --------------------------------------------------
    1   1     文章标题1   /url/1/  07-10-24 20:05:37
    2   2     别人的文章   /url/32/  07-10-24 22:26:03
    3   1     文章标题2   /url/2/  07-10-24 21:32:57
    4   1     文章标题    /url/5/  07-10-24 23:57:00
    5   3     测试数据    /url/3/  07-10-24 19:00:01
    ---查询视图中'地区'字段:
    declare @sss int
    declare @aaa int
    declare @diqu varchar(60)
    set @diqu=''
    declare @diqu2 varchar(6)
    set @aaa=1
    select @sss=地区 from mian
    while(@aaa<=@sss)
    begin
          select @diqu2=名称 from  space where ID=@aaa
          set @diqu=@diqu+@diqu2
          set @aaa=@aaa+1
    end
    select @diqu---查询视图中'标签'字段:
    1\可以通过字符串函数计算出mian表中,'标签'字段的长度
    2\再利用循环的形式,依次取出每个数字(1, 2, 3, 5,)
    3\查询出每个数字对应的标签表中的记录,组合成为一个变量(像查询视图中'地区'字段一样)---查询视图中'最新发表'字段:
    由于没有提供具体的信息,不太清楚.(应该是查询文章表中,'用户ID'为1的所有'链接'和'标签名称'字段组合而成的值吧!)
    具体的解决办法,还没想到.嘿嘿....