[英]MySQL syntax query for checking multiple values at once
如何在MySQL中进行这项工作
select (3,5) not in (5,9,8);
它应该返回0,因为5在(5,9,8)中。
提前致谢。
检查“另一个表”的“另一个列”中是否存在“一个列”中的任何值。
使用EXISTS
SELECT
one_column
FROM one_table t1
WHERE EXISTS (
SELECT NULL
FROM another_table t2
WHERE t1.one_column = t2.another_column
)
;
注意,在上面的示例中,子查询select子句不需要返回任何值,因为该子查询的where子句中会出现“检查是否存在”。 但是,对于正确的语法,需要选择子句,但实际上它只是装饰性的(因此可以使用“选择1”或“选择*”代替“选择null”)。
使用IN()
SELECT
one_column
FROM one_table
WHERE one_column IN (
SELECT another_column
FROM another_table
)
;
此子查询中的select子句确实必须返回值以进行比较。 使用IN()时,请小心不要返回NULL。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.