Sql Query获取Resultset

时间:2017-03-21 22:09:11

标签: sql

数据包含超过360K个数字,因此请确保优化查询。

DATABASE

表包含数据

+---------+
| Styles  |
+---------+
|  1 
|  2
|  3
|  4
|  7
|  8
|  9
|  10 
+---------+

我有的数字

+--------+
|Numbers |
+--------+
| 4
| 5  
| 6 
| 9 
+--------+

不在样式中的数字是假设5,6我如何得到它们。

由于

2 个答案:

答案 0 :(得分:0)

使用左或右连接此样本使用左关节

select b.col1, 'is missing'
from    (values(1),(2),(3),(4),(5),(6),(7),(8),(9),(10)) as b(col1)
        left join (values(1),(2),(3),(4),(5),(6),(9),(10)) as a(col1) on b.col1 = a.col1
where   a.col1 is null

答案 1 :(得分:0)

即时创建您感兴趣的十个数字,并删除表格中的数字。 E.g:

select row_number() over (order by bus_id) from table fetch first 10 rows only
except
select bus_id from table;

语法当然取决于DBMS。您可能正在使用DBMS,您可以使用rownum,limit,top,minus,values子句或其他任何内容。