【发布时间】:2013-08-16 01:48:47
【问题描述】:
在非透视操作中,我想要以下内容:
SELECT A, B, C FROM [complex joins/where clause] As DerivedTable
UNION
SELECT A, B, D FROM DerivedTable
UNION
SELECT A, B, E FROM DerivedTable
...
但它抱怨找不到DerivedTable(我使用派生表,因此不必一次又一次地评估[complex joins/where clause],从而减慢速度)。
我知道我可以简单地创建一个名为 DerivedTable 的新查询来表示 [complex joins/where clause] 但是
上述 SQL 是从 Excel 传递的 - 我宁愿不必在运行上述 SQL 之前打开数据库来创建新查询
[complex joins/where clause]是动态生成的,每个用户都在变化,其中两个可能同时运行上面的SQL。
【问题讨论】:
-
不幸的是,这不是工会的工作方式。我假设您仅限于单个查询(而不是能够输出多个 SQL 语句),那么您是否能够在所有联合中简单地输出
[complex joins/where clause]而不仅仅是第一个? -
[complex joins/where clause]需要很长时间才能执行,所以理想情况下我想避免重复评估[complex joins/where clause]
标签: sql ms-access union derived-table table-alias