有这样一个表
a    b    c     d
张三  男    10   1月
李四  男    20   1月
王五  男    15   1月张三  男    10   2月
李四  男    20   2月
王五  男    15   2月张三  男    10   3月
李四  男    20   3月
王五  男    15   3月
 
马六  男    10   3月。
现在要吧马六的记录在1月和2月里边全部加上也就是说加上这样两条记录】
马六  男   10    1月
马六  男    10    2月

解决方案 »

  1.   

    insert into 表 select a,b,c, '2月' from 表 where a='马六' and d='1月'
    insert into 表 select a,b,c, '3月' from 表 where a='马六' and d='1月'
      

  2.   

    能在SQL中出现的只能是a,b,c,d四个字段的名字。。谢谢。。
      

  3.   

    LZ的意思是找最大的月和最小的月,没有的月进行补齐?写个函数吧!create table tb(a varchar(20),b varchar(20),c varchar(20),d varchar(20))
    insert into tb values ('张三',  '男',    '10',  '1月')
    insert into tb values ('李四',  '男',    '20',  '1月')
    insert into tb values ('王五',  '男',    '15',  '1月')insert into tb values ('张三',  '男',    '10',  '2月')
    insert into tb values ('李四',  '男',    '20',  '2月')
    insert into tb values ('王五',  '男',    '15',  '2月')insert into tb values ('张三',  '男',    '10',  '3月')
    insert into tb values ('李四',  '男',    '20',  '3月')
    insert into tb values ('王五',  '男',    '15',  '3月')
    go
    insert into tb(d,a,b,c)
    select distinct d,'马六','男','10' from tb 
      

  4.   

    参考这个帖子 :)
    http://topic.csdn.net/u/20080601/20/75a61544-fe86-4ef6-bc46-8125f801ca29.html
      

  5.   

    -->生成测试数据
     
    declare @tb table([a] nvarchar(2),[b] nvarchar(1),[c] int,[d] nvarchar(2))
    Insert @tb
    select N'张三',N'男',10,N'1月' union all
    select N'李四',N'男',20,N'1月' union all
    select N'王五',N'男',15,N'1月' union all
    select N'张三',N'男',10,N'2月' union all
    select N'李四',N'男',20,N'2月' union all
    select N'王五',N'男',15,N'2月' union all
    select N'张三',N'男',10,N'3月' union all
    select N'李四',N'男',20,N'3月' union all
    select N'王五',N'男',15,N'3月' union all
    select N'马六',N'男',10,N'3月'
    --Select * from @tbselect [a],[b],[c],[d] from 
    (select [a],[b],[c] from @tb group by [a],[b],[c])a
    left join
    (select [d] from @tb group by [d]) b on 1=1/*(10 row(s) affected)
    a    b    c           d
    ---- ---- ----------- ----
    李四   男    20          1月
    李四   男    20          2月
    李四   男    20          3月
    马六   男    10          1月
    马六   男    10          2月
    马六   男    10          3月
    王五   男    15          1月
    王五   男    15          2月
    王五   男    15          3月
    张三   男    10          1月
    张三   男    10          2月
    张三   男    10          3月(12 row(s) affected)
    */