能否在单个BigQuery脚本中混用标准SQL与Legacy SQL并动态切换模式?
BigQuery单脚本内切换SQL方言的问题
不行,BigQuery的--use_legacy_sql是命令行级别的参数,无法在单条SQL语句内部动态切换SQL方言。
要把三个查询整合为单个脚本,最直接的方式是写一个Shell脚本将三个命令串联执行,示例如下:
#!/bin/bash # 执行标准SQL查询sql1 bq query --use_legacy_sql=false "<sql1>" # 执行Legacy SQL查询sql2 bq query --use_legacy_sql=true "<sql2>" # 执行标准SQL查询sql3 bq query --use_legacy_sql=false "<sql3>"
如果不想分多个bq query命令,唯一的替代方案是把sql2的逻辑用标准SQL重写,但根据你的描述这会很繁琐,所以用Shell脚本串联三个命令是更务实的选择。
内容的提问来源于stack exchange,提问作者Carlos Bribiescas
相关产品推荐
相关产品推荐

