我的sql有问题(我对sql比较新)。我无法弄清楚为什么我会收到语法错误。任何帮助将不胜感激。
提前致谢。
SELECT *
FROM table_name_1
WHERE
column_A IN ('Lorem', 'Ipsum', 'Test')
AND column_B NOT EXISTS
(
SELECT column_C
FROM table_name_2
WHERE Date >= CURDATE()
)
答案 0 :(得分:6)
您无法将NOT EXISTS与列值进行比较。
SELECT *
FROM table_name_1
WHERE
column_A IN ('Lorem', 'Ipsum', 'Test')
AND NOT EXISTS
(
SELECT 1
FROM table_name_2
WHERE Date >= CURDATE()
AND column_c = column_b
)
或使用IN
SELECT *
FROM table_name_1
WHERE
column_A IN ('Lorem', 'Ipsum', 'Test')
AND column_B NOT IN
(
SELECT column_C
FROM table_name_2
WHERE Date >= CURDATE()
)