1

这是在 teradata 中。

出于许多充分的理由,我想要一个类似下面的东西,我首先制作一个只有文字列表的 CTE,然后可以在后面的语句中引用它:

with MyList(num) as(
    'a','b','c','d'
)

select foo from mytable where x in ( select(num) from MyList))

这是一个非常人为的例子,我知道它在现实中几乎没有应用。但它确实解决了这个问题。

谢谢!

4

2 回答 2

1

teradata 是否支持标准 SQL 行构造函数?

WITH MyList (num) 
     AS
     (
      SELECT num
        FROM (
              VALUES ('a'),
                     ('b'),
                     ('c'),
                     ('d')
             ) AS MyList (num)
     ) 
SELECT num
  FROM MyList;
于 2010-07-22T10:20:09.873 回答
1

进行返回该结果的查询:

with MyList(num) as(
  select 'a' union all
  select 'b' union all
  select 'c' union all
  select 'd'
)
于 2010-07-21T13:48:48.887 回答