sql检查行是否包含一组值

3bygqnnd  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(408)

这个问题在这里已经有答案了

为一个值检查多列(3个答案)
两年前关门了。
我有如下数据库:

我现在想检查这个表中的每一行是否包含一组数据。例如:我想查询以下信件: A, B 这将返回以下行: res1, res4 这是因为 res1 以及 res4 包含值 A 以及 B 在其中一列
这种逻辑也适用于这种情况:
如果我只想问一下这封信 B 查询必须返回以下行: res1, res2, res4 所以我要做的是查询检查列 valsx, valsy, valsz, valsq 如果这些列中的任一列包含一个查询的值。如果行(四列)中存在所有查询的值,则返回该行。
我不知道如何使用sql。我试过了 select * from table where valsx contains b or valsy contains b or valsz contains b or valsq contains b 如果有什么不清楚的地方,请告诉我,以便我能澄清。

s4chpxco

s4chpxco1#

你可以用 in :

select t.*
from t
where 'A' in (valsx, valsy, valsz, valsq) and
      'B' in (valsx, valsy, valsz, valsq);

相关问题