?? delete刪除重復記錄2.txt
字號:
有個表USERS如下
Number(int) Name(char)
1 a
2 b
3 b
4 a
5 c
6 c
要求:當Name列上有相同時,
只保留Number這列上值小的
那一行,結果應如下:
Number(int) Name(char)
1 a
2 b
5 c
問:用SQL語句的Delete來實現.(記住,是一個SQL語句)
create table #user(number int ,name char(1))
insert into #user select 1,'a'
union all select 2,'b'
union all select 3,'b'
union all select 4,'a'
union all select 5,'c'
union all select 6,'c'
delete from #user where number not in(select number from (select min(number)as number,name from #user group by name)as a)
////
下面是plsql實現方法:
Create Table std_user
(seq Number(10)
,std_Name Varchar2(50)
)
/
Select * From std_user
Select seq,std_name From std_user
Where seq In(Select min(seq) From std_user
Group By std_name)
/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -