Google bigquery 在交互模式下,bq是否有终止字符?我如何设置它?

Google bigquery 在交互模式下,bq是否有终止字符?我如何设置它?,google-bigquery,Google Bigquery,我刚刚开始使用bigquery,我已经习惯了跨多行编写SQL。但是如果我跑 bq shell 为了进入交互模式,我不能在没有bq报告错误的情况下将跨多行运行的查询放入,因为它评估指令的第一行,然后抱怨没有FROM或GROUP BY子句 在其他数据库客户机中,我可以设置一个终止字符:例如在DB2中 db2 -t 允许我使用以结尾的命令运行db2 有没有一种方法可以在运行bq时为每条语句指定一个终止字符?我已经看过了,虽然它指的是全局标志,但我没有看到对终止字符的引用。在深入研究后,我可以确认没

我刚刚开始使用bigquery,我已经习惯了跨多行编写SQL。但是如果我跑

bq shell
为了进入交互模式,我不能在没有bq报告错误的情况下将跨多行运行的查询放入,因为它评估指令的第一行,然后抱怨没有FROM或GROUP BY子句

在其他数据库客户机中,我可以设置一个终止字符:例如在DB2中

db2 -t
允许我使用以结尾的命令运行db2

有没有一种方法可以在运行bq时为每条语句指定一个终止字符?我已经看过了,虽然它指的是全局标志,但我没有看到对终止字符的引用。

在深入研究后,我可以确认没有允许您进行多行查询的终止字符

这是构建bq shell的模块的结果

作为一种替代方法,您可以使用bq query直接从shell运行查询,因为shell允许使用多行命令(用双引号(“)括起来)

例如:

bq query "SELECT station_number, year, month, day 
FROM [publicdata:samples.gsod]
LIMIT 10"

+----------------+------+-------+-----+
| station_number | year | month | day |
+----------------+------+-------+-----+
|          42420 | 2007 |     5 |  20 |
|          42080 | 2007 |     5 |   5 |
|         152990 | 1990 |     3 |  26 |
|         543110 | 1976 |    10 |  24 |
|         740430 | 1966 |    11 |  30 |
|         228540 | 1949 |     9 |  23 |
|         747809 | 2009 |     7 |  17 |
|         681120 | 1997 |     2 |  15 |
|          26070 | 2008 |    12 |  27 |
|         128430 | 1988 |     9 |  22 |
+----------------+------+-------+-----+