如果表格选择中的所有列都具有相同的值,我试图让select语句输出 。
以下是例子:
下表中每个name
的值相同(age
,ruleid
)。每行的Data
值都会发生变化(True
/ False
)。
我希望能够从ruleid = '27460'
的规则表中进行选择,并且如果data
的所有选定True
值都为ruleid
,则只能写入输出。
在下面的示例表中,ruleid 27460
的所有行都有data = 'True'
除了一行 - 所以没有输出。如果它们都是True
,则输出应为ruleid
的一行。
ruleid name age
27460 Bob 99
Rule
+-------------+--------------+------------+-------+
| ruleid | data | name | age |
+-------------+--------------+------------+-------+
| 27460 | True | Bob | 99 |
| 27488 | True | Sue | 23 |
| 27460 | True | Bob | 99 |
| 27460 | True | Bob | 99 |
| 27460 | False | Bob | 99 |
| 27460 | True | Bob | 99 |
| 27488 | True | Sue | 23 |
| 27460 | True | Bob | 99 |
+-------------+--------------+------------+-------+
答案 0 :(得分:0)
您可以进行以下查询
select *
from rule r1
where r1.ruleid = 27460
and r1.data = (select r2.data from rule r2 where
r2.data='True' and r1.data = r2.data)
limit 1;