我正在开发带有 Access 数据库的 WinForms 应用程序。请纠正我。
Select *
from EMP
where Empid in
(Select id
from Test1
where pin=4
UNION
Select id
from Test2
where pin=4)
当我尝试在 Access 数据库上执行此操作时,它给了我这个错误:
子查询中不允许操作
我正在开发带有 Access 数据库的 WinForms 应用程序。请纠正我。
Select *
from EMP
where Empid in
(Select id
from Test1
where pin=4
UNION
Select id
from Test2
where pin=4)
当我尝试在 Access 数据库上执行此操作时,它给了我这个错误:
子查询中不允许操作
您还可以使用两个标准 SQL where 条件,如下所示。我已经测试了这种方法,它似乎可以按预期工作
SELECT x, y, z
WHERE x NOT IN (SELECT x FROM b)
AND NOT IN (SELECT x FROM c)
我尝试如下,它的工作。
Select *
from EMP where Empid in (Select id from Test1 where pin=4 ) UNION
Select *
from EMP where Empid in(Select id from Test2 where pin=4)
真的很晚了,但这有效
Select *
from EMP
where Empid in
(SELECT id FROM (
Select id from Test1 where pin=4
UNION Select id from Test2 where pin=4 ) )
像这样的东西怎么样
Select e.*
from EMP e INNER JOIN
(
Select id
from Test1
where pin=4
UNION
Select id
from Test2
where pin=4
) subSelect ON e.Empid = subSelect.id
据我所知,子查询中不允许联合操作,相反,您可以创建一个命名联合查询并包含在子查询表达式中