在Big Query中创建一个表

时间:2017-05-23 11:55:18

标签: google-bigquery

我想创建一个包含SQL语句中指定值的列。结果应如下所示:

-- +---------+
-- | Title   |
-- +---------+
-- | Title 1 |
-- | Title 2 | 
-- | Title 3 |
-- | Title 4 |
-- +---------+

我知道使用语法SELECT * FROM(选择'标题1'作为标题),(选择标题2'作为标题),... 有没有更短的方法怎么做?我有数百个值,我需要在SQL语句中指定它们。

2 个答案:

答案 0 :(得分:1)

以下是一个让您开始使用standard SQL

的示例
#standardSQL
SELECT Title
FROM UNNEST([
  'Title 1',
  'Title 2',
  'Title 3'
]) AS Title;

您可以根据需要在列表中添加任意数量的标题。如果您使用的是BigQuery API,则可以pass an array type query parameter以避免必须在查询文本中包含该列表。

答案 1 :(得分:1)

for BigQuery Legacy SQL

   
list_display

您可以使用FLATTEN运算符来拼合SPLIT的结果 见下面的例子

#legacySQL
SELECT SPLIT(Titles) AS Title 
FROM (SELECT 'Title 1,Title 2,Title 3,Title 4' AS Titles)