我下表工作:解釋下面的SQL
create table EmpDup(empid int,name varchar(20))
insert into EmpDup values(1,'Andy')
insert into EmpDup values (1,'Andy')
insert into EmpDup values(2,'Bill')
insert into EmpDup values(2,'Bill')
insert into EmpDup values (2,'Bill')
insert into EmpDup values (3,'Chris')
表改變插入行後添加標識列:
alter table EmpDup add sno int identity(1,1)
可能有人請解釋一下下面的查詢是如何工作的?
select sno from EmpDup D where
1<(select count(*) from EmpDup A where A.empid=D.empid and A.name=D.name and
D.sno>=A.sno)
我無法弄清楚。它給出以下結果:
SNO 2 4 5
您希望輸出什麼,爲什麼? – hvd
不是真的在期待任何輸出...只是不理解查詢的工作原理...不能將其翻譯成簡單的英語在我的頭... – Tejas