【发布时间】:2018-05-11 23:19:55
【问题描述】:
我知道在其他 SQL 风格 (T-SQL) 中可以“选择”提供的数据而无需表。喜欢:
SELECT *
FROM (VALUES (1,2), (3,4)) tbl
如何使用 Teradata 做到这一点?
【问题讨论】:
-
select 1, 2 union all select 3, 4? -
@DmitryBychenko 作为单个语句执行。失败 [3888 : 42000] UNION、INTERSECT 或 MINUS 的 SELECT 必须引用表。语句 1:选择语句失败。
-
Gordon 向您展示了奇怪的语法,但您为什么真的需要它?
-
主要是为另一个问题即时创建一个小的自包含数据集。在生产环境/ETL 中,您可能希望将所有信息存储在表中。像这样一个较大的查询存储一小组元组的一个优点是您可以轻松地将其保存在源代码管理中。另一个好处是您可以在这个虚拟表中使用 CURRENT_DATETIME,从而在某些情况下无需更新物理表。