1 select count(pb03102) from sdpb031 group by pb03101
2 select distinct pb03102 from sdpb031
我第一条语句查询出41条记录,第二条语句查出48条记录。这个是为什么?本来我想
select * from
(select count(pb03102) as aa,pb03102 from sdpb031 group by pb03101,pb03102) as a
right join
(select distinct pb03102 from sdpb031) as b
on a.pb03102 = b.pb03102
对比出看哪些记录不同,但我实际想的跟结果又不同????
求解答啊,求思路
2 select distinct pb03102 from sdpb031
我第一条语句查询出41条记录,第二条语句查出48条记录。这个是为什么?本来我想
select * from
(select count(pb03102) as aa,pb03102 from sdpb031 group by pb03101,pb03102) as a
right join
(select distinct pb03102 from sdpb031) as b
on a.pb03102 = b.pb03102
对比出看哪些记录不同,但我实际想的跟结果又不同????
求解答啊,求思路
2 select distinct pb03102 from sdpb031
明显两个都不同的意思,怎么比pb03101 pb03102
1 1
1 2你统计后一条,DISTINCT 2两条
distinct pb03102 是去重.原理不一样,结果当然不一样.
count(pb03102)OVER(),
COUNT(*)OVER(PARTITION BY pb03102)
from sdpb031
from sdpb031
group by pb03101
having count(pb03102)>COUNT(distinct pb03102)這樣自己加條件判斷