如何用1条语句实现这样1个逻辑

[复制链接]
查看11 | 回复4 | 2014-2-18 16:44:08 | 显示全部楼层 |阅读模式
A表
id
-----------------------
1
2
3
4
...
...
1000
A表是按顺序从1插入到1000从小到大,其中某几条被删除了,如何用1条sql语句找出是在哪些行被删了?


回复

使用道具 举报

千问 | 2014-2-18 16:44:08 | 显示全部楼层
select rownum from dual connect by rownum<=1000
minus
select id from a
回复

使用道具 举报

千问 | 2014-2-18 16:44:08 | 显示全部楼层
号码段选取的问题
ref: http://www.itpub.net/forum.php?m ... %3D28%26typeid%3D28
回复

使用道具 举报

千问 | 2014-2-18 16:44:08 | 显示全部楼层
WITH TMP1 AS
(SELECT LEVEL ID FROM DUAL CONNECT BY LEVEL<1001),
TMP2 AS (SELECT LEVEL ID FROM DUAL CONNECT BY LEVEL<500)--你目前的表
select * from tmp1 where not exists(select 'x' from tmp2 where tmp2.id=tmp1.id) order by 1 asc
不过楼上的解答完全是吊炸天。ls的才是王道。
回复

使用道具 举报

千问 | 2014-2-18 16:44:08 | 显示全部楼层
这个就用2L的挺好
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行