我用行转列后 表格式如下
ID A B C
1 3 B1 C1 B2 C2 B8 C9
2 3 B2 C2 NULL NULL
2 3 B8 C9 NULL NULL
3 2 B3 C3 B4 C3
4 2 B4 C3 NULL,NULL 注列数是未知的 就是 A中可能有很多个3重复
如何从上表筛选出
我想取出结果表是
1 3 B1 C1 B2 C2 B8 C9
3 2 B3 C3 B4 C3
ID A B C
1 3 B1 C1 B2 C2 B8 C9
2 3 B2 C2 NULL NULL
2 3 B8 C9 NULL NULL
3 2 B3 C3 B4 C3
4 2 B4 C3 NULL,NULL 注列数是未知的 就是 A中可能有很多个3重复
如何从上表筛选出
我想取出结果表是
1 3 B1 C1 B2 C2 B8 C9
3 2 B3 C3 B4 C3
毕竟上面的数据太少 只能说是测试数据。
还是把详细条件说出来 才能得到正确的SQL。
from tb ,(
select min(id) as id from tb
group by A) ta
where tb.A=ta.A AND tb.B=ta.B
select * from #tb where id=(select min(id) from #tb)
1 3 B1 C1 B2 C2 B8 C9
2 3 B2 C2 NULL NULL
2 3 B8 C9 NULL NULL
3 2 B3 C3 B4 C3
4 2 B4 C3 NULL,NULL 注 列数是未知的 就是 A中可能有很多个3重复
当条件 A字段=3和2的 结果如下
1 3 B1 C1 B2 C2 B8 C9
3 2 B3 C3 B4 C3
我想取出结果表是
1 3 B1 C1 B2 C2 B8 C9
3 2 B3 C3 B4 C3
表A
ID A B C D E F G (列名) 以下对应数据
1 3 B1 C1 B2 C2 B8 C9
2 3 B2 C2 NULL NULL NULL NULL
2 3 B8 C9 NULL NULL NULL NULL
3 2 B3 C3 B4 C3 NULL NULL
4 2 B4 C3 NULL,NULL NULL NULL
结果
1 3 B1 C1 B2 C2 B8 C9
3 2 B3 C3 B4 C3