我现在想要检查此表中的每一行是否包含一组数据。像这样:我想查询以下字母:fb:linkInternalExists
这应返回以下行:A, B
这是因为res1, res4
和res1
在其中一列中包含值res4
和A
这种逻辑也适用于这种情况:
如果我只查询字母B
,则查询必须返回以下行:B
所以我想要发生的是,如果这些列中的任何一个包含查询值之一,查询将检查列res1, res2, res4
。如果行中存在所有查询的值(四列),则返回该行。
我如何用SQL做这个我不知道。我试过了
valsx, valsy, valsz, valsq
如果有任何不清楚的地方让我知道,我可以澄清一下。
答案 0 :(得分:2)
您可以使用in
:
select t.*
from t
where 'A' in (valsx, valsy, valsz, valsq) and
'B' in (valsx, valsy, valsz, valsq);