时间:2021-07-01 10:21:17 帮助过:20人阅读
合并单表中某两行具有相同内容的数据,变成一行数据来显示。 现为合并p1,p2字段的值。 createtabletest ( p1varchar(10), p2varchar(10), p3varchar(10), p4varchar(10), p5varchar(10) ) 无 (select aaa.p1, bbb.p2, aaa.p3, aaa.p4, aaa.p5 from (select RO
合并单表中某两行具有相同内容的数据,变成一行数据来显示。(
select aaa.p1, bbb.p2, aaa.p3, aaa.p4, aaa.p5
from (select ROW_NUMBER() OVER(ORDER BY ppp.p3) as RowNumber1, ppp.*
from test ppp
where ppp.p2 is null) aaa,
(select ROW_NUMBER() OVER(ORDER BY qqq.p3) as RowNumber1, qqq.*
from test qqq
where qqq.p1 is null) bbb
where
(aaa.p3 = bbb.p3 and aaa.p4 = bbb.p4)
)
union all
(
select * from test where (p3,p4) not in (select p3,p4 from test group by p3,p4 having count(*)>1)
)