Tsql 如何在Access中使用WITH语句?

Tsql 如何在Access中使用WITH语句?,tsql,ms-access,Tsql,Ms Access,我正在使用Access,希望通过命名SELECT语句来简化一些查询。但是,由于某些原因,我不能将与语句一起使用。我尝试运行以下简单示例来说明问题: WITH T1 AS ( SELECT * FROM [Transactions] ) SELECT * FROM T1; 其中,交易是日期和金额表。运行此查询时,出现以下错误: SQL语句无效;应为“删除”、“插入”、“过程”、“选择”或“更新” 我做错了什么?正如其他人在评论中所说,Access SQL不支持with关键字,就像TSQL一样。不

我正在使用Access,希望通过命名
SELECT
语句来简化一些查询。但是,由于某些原因,我不能将
语句一起使用。我尝试运行以下简单示例来说明问题:

WITH T1 AS
(
SELECT * FROM [Transactions]
)
SELECT * FROM T1;
其中,
交易
是日期和金额表。运行此查询时,出现以下错误:

SQL语句无效;应为“删除”、“插入”、“过程”、“选择”或“更新”


我做错了什么?

正如其他人在评论中所说,Access SQL不支持with关键字,就像TSQL一样。不过,通过编写第一个查询并保存它,您可以完成几乎相同的任务。然后,可以在Access SQL中引用保存的查询,就像它是一个表一样(类似于在TSQL中创建视图)


其他人还指出,VBA可以使用with关键字,但用途不同。

Access不支持该语法。你为什么期望它能起作用?可以沿着
SELECT*FROM(SELECT*FROM[Transactions])
的行重写查询,或者将
SELECT*FROM[Transactions]
放入其自己的视图/查询和引用中。@ta.speot.这就是为什么要投否决票?很抱歉,我不知道这行不通,您有解决办法吗?@ta.speot.is Thank:)WITH is is is a VBA语句,而不是Access SQL语句Access使用Access SQL: