Sql 取消测试BQ表的最简单方法

Sql 取消测试BQ表的最简单方法,sql,google-bigquery,unnest,Sql,Google Bigquery,Unnest,我可以直接从BQ中的文字中取消数组的嵌套,如下所示: select * from unnest([1,2,3]) # [{"f0_": "1"},{"f0_": "2"},{"f0_": "3"}] 如何对带有语句的执行相同操作?例如,类似于: with Table as ( select [1,2,3] as arr ) select * from unnest(Ta

我可以直接从BQ中的文字中取消数组的嵌套,如下所示:

select * from unnest([1,2,3])
# [{"f0_": "1"},{"f0_": "2"},{"f0_": "3"}]
如何对带有语句的
执行相同操作?例如,类似于:

with Table as (
  select [1,2,3] as arr
 ) select * from unnest(Table.arr) ?? -- currently get unrecognized table name
上面的正确语法是什么?这里有一个我想到的例子:这是做一个普通的不必要的测试的最简单的方法吗

with Movie as (
  select "Spider-Man" as Title, ['Sci-Fi', 'Action'] as Genres
 ) select Movie.Title, Genre from Movie cross join unnest(Movie.Genres) Genre
如果是这样,为什么没有交叉连接就不能完成上述操作

如何在with语句中执行相同的操作

这是做一般性不测最简单的方法吗

with Movie as (
  select "Spider-Man" as Title, ['Sci-Fi', 'Action'] as Genres
 ) select Movie.Title, Genre from Movie cross join unnest(Movie.Genres) Genre

对!

谢谢--
table1,table2
table1交叉连接table2
的缩写?没错!在本例中,逗号是交叉联接的快捷方式