SQL选择是否满足一定数量的WHERE子句
因此,我有一个SQL语句,其形式如下,包含多个WHERE子句:SQL选择是否满足一定数量的WHERE子句,sql,where,netezza,Sql,Where,Netezza,因此,我有一个SQL语句,其形式如下,包含多个WHERE子句: SELECT cols FROM table WHERE CONDITION1 OR CONDITION2 OR ... CONDITIONN 我知道如果我运行这个,那么我将得到至少满足上述n个条件之一的所有行 但现在,我想返回至少k个WHERE条件满足的行。有没有一种方法可以在SQL中这样做,而不必写出WHERE子句集的所有nChoosek子集?这是一种相当乏味的方法,但应该可以: SELECT cols FROM tabl
SELECT cols FROM table
WHERE
CONDITION1 OR
CONDITION2 OR
...
CONDITIONN
我知道如果我运行这个,那么我将得到至少满足上述n个条件之一的所有行
但现在,我想返回至少k个WHERE条件满足的行。有没有一种方法可以在SQL中这样做,而不必写出WHERE子句集的所有nChoosek子集?这是一种相当乏味的方法,但应该可以:
SELECT cols
FROM table
WHERE
CASE WHEN CONDITION1 THEN 1 ELSE 0 END +
CASE WHEN CONDITION2 THEN 1 ELSE 0 END +
CASE WHEN CONDITION3 THEN 1 ELSE 0 END +
...
>= N
;
是MySQL上的一个很好的资源。所有这些都通过示例进行了说明。您使用的是哪种?netezza sql。。。。
SELECT cols
FROM table
WHERE
CASE status
CASE WHEN CONDITION1 THEN 1
CASE WHEN CONDITION2 THEN 1
END