在SQL查询中创建紧凑的“ WHERE”过滤器

时间:2018-10-11 17:46:09

标签: python sql oracle

我有一个长列表(或3到4列数据的表),需要同时满足查询条件,如下所示:

A    B   C
x1   y1  z1
x2   y2   z2
x3   y3   z3
.
.
.
xn    yn   zn

有没有一种方法可以创建表达式/函数等或单独的列表等,可以将其调用到SQL查询中(而不是显式地编写):

所以假设,我将此列表作为表X中的矩阵/列表,可以使用

我可以使用类似这样的示例SQL查询

SELECT *
FROM TABLE B
WHERE CONDITION  IN  ROWS OF TABLE X 

只需在此处添加,我正在使用python驱动程序通过数据库以及我在本地创建的表X获取数据。

1 个答案:

答案 0 :(得分:0)

您可以使用in

SELECT b.*
FROM TABLE B
WHERE (b.a, b.b, b.c) IN (SELECT x.a, x.b, x.c FROM X)