求一sql语句
原来表A有号码80条,然后又导入了30条,然后共有110条,但是其中重复的数据有20条,要把这后面导入的30条中的20条删除掉,要怎么写SQL?ORacle数据库,急,谢谢
请提供表结构。
id,card_num,ins_time
card_num重复了
id,ins_time都不重复吧?
SQL code:
delete from 表名 where ins_time not in(select ins_time from(select card_num,min(ins_time) ins_time from 表名 group by card_num));
SQL> select * from test;
T1 T2 T3
-------------------- -------------------- ----------
A A 1
A A 2
B A 3
C B 4
D B 5
SQL> select t2,min(t3) from test group by t2;
T2 MIN(T3)
-------------------- ----------
A 1
B 4
SQL> delete from test where t3 not in(select t3 from(select t2,min(t3) t3 from test group by t2));
已删除3行。
SQL> commit;
提交完成。
SQL> select * from test;
T1 T2 T3
-------------------- -------------------- ----------
A A 1
C
相关问答:
请问一下,外网两台SQLSERVER实例数据传输,有没有采用数据压缩和加密。压缩比是多少,加密是什么加密算法?相关文档哪里可以找到?谢谢
我也想知道!关注此贴!
关注~~
数据库大牛都哪去了啊?
......
我一个项目,有个插入操作,具体是这样的:
我有进货信息表。在出货时选择相应的进货信息,输入数量,选择部门后,点保存按钮,由于网络延时,点一下没有反映,于是用户就又点一下,导致一次插入了两条记录:
例:
......
有2个表啊:
表名:yh
用户编码 用户名称
001 a
002 b
003 c
表名:ys
用户编码 本期指数 抄表时间
001 ......
一个很奇怪的问题
SQL code
select * from Gprs_DataInof
--可以查到所有的数据
select * from Gprs_DataInof where DataTime between 1900-10-16 1:01:00' and '2009-10-20 1:01:00'
--一条数据 ......