所以我有一个带有多个WHERE子句的以下形式的SQL语句:
SELECT cols FROM table
WHERE
CONDITION1 OR
CONDITION2 OR
...
CONDITIONN
Run Code Online (Sandbox Code Playgroud)
我知道如果我运行它,那么我将得到满足上述n个条件中至少一个的所有行.
但是现在,我想返回行,使得至少满足WH条件的k个.有没有办法在SQL中执行此操作而不写出所有n 选择 WHERE子句集的k个子集?
这是一种相当乏味的方法,但它应该有效:
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
;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
81 次 |
| 最近记录: |