我可以运行两个单独的SQL语句,其中第一个INSERT INTO临时表,第二个SQL语句在临时表和另一个表之间运行INNER JOIN。
我试图在单个SQL语句中运行这两个语句但是我遇到了语法错误(使用访问权限)。
第一句话:
INSERT INTO temp SELECT id from t1 where a_column='Yes'
第二声明:
SELECT * from t2 INNER JOIN t2.id = temp.id
有没有办法在一个语句中运行这两个?
答案 0 :(得分:2)
这是两个非常不同的操作。您不能一次插入和输出所有数据(至少不在Access中)。
如果您通过查询执行此操作,则需要进行第二次查询。 Access中的每个查询只能执行一个语句。
您还需要指定要连接在一起的两个表。每个陈述都是独立的,并且没有参考之前的内容。
SELECT *
FROM t2
INNER JOIN temp on t2.id = temp.id
虽然取决于你想要完成什么(我不确定你为什么需要一个临时表),但你可能会放弃这个
SELECT *
FROM t2
INNER JOIN t1 ON t2.id = t1.id
WHEREt1.a_column='Yes'