有两张表:tb1,tb2
tb1的表结构是这样的:
             Uid       Uname
             1          a
             2          b
             3          c
tb2的表结构是这样的:
            ID          rname        uid
            001         add          1,2
            002         del          2,3
            003         sel          3
我想得到的结果是这样:
            ID         rname         uid
            001         add           a,b
            002         del           b,c
            003         sel           c
不知用sql脚本如何得到

解决方案 »

  1.   

    你是说用SQL语句得出你想要的结果吗?
      

  2.   

    对,如果实在不行,也可以用存储过程等,不过要基于sql脚本
      

  3.   

    tb2中的uid是从tb1中来取的,只不过,它是进行以逗号隔开的而已
      

  4.   

    就是说简单的把123替换成abc就可以了吧,但是sql语句实在是爱莫能助啊!
      

  5.   

    一句SQL实现不了吧,关注
      

  6.   

    我一直等着高手呢,还没来??
    关键是uid的问题,我想把uid的值用子查询查出来,可是暂时想不出来!
      

  7.   

    哎呀,提供的列子太不好了,使得误解了,我就是要将tb2表中的uid转换为以名称相连接,uid中的都是对应tb1中的
      

  8.   

    我现在只能做到这点
    001         add           a
    001         add           b
    002         del           b
    002         del           c
    003         sel           c
    就是不能把他以逗号分隔的连接起来
      

  9.   

    当初建数据库的时候,将表2进行拆分成 id,rname; keyId,id,uid(keyId主键)就好了。这样,直接关联即可。
      

  10.   

    LZ你可以去SQl板块里问一下,里面Sql高手很多的,我有很多问题都是这样解决的。
      

  11.   

    A    B  C
    001 add a
    001 add b
    002 del b
    002 del c
    003 sel c
    我帮你用逗号隔开吧:假如结果表名为:tableselect distinct A,B
    replace(replace((select C From table X where A=t.A and B=t.B for xml auto),'<x C="',''),'"/>',',') as tt
    from table t
      

  12.   

    少了个逗号:A    B  C
    001 add a
    001 add b
    002 del b
    002 del c
    003 sel c
    我帮你用逗号隔开吧:假如结果表名为:tableselect distinct A,B,
    replace(replace((select C From table X where A=t.A and B=t.B for xml auto),'<x C="',''),'"/>',',') as tt
    from table t