哎呀!使用保留字来命名列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了哎呀!使用保留字来命名列相关的知识,希望对你有一定的参考价值。

我创建了一个bigquery表,其中一列名为“row”(没有引号)... doh!现在,如果我引用该列,我的sql将无法编译:

SELECT row, etext FROM [hcd.hdctext] LIMIT 1; =ERROR"

我没有在GQL中看到“ROW”作为保留字...

我在一些系统中看到你可以用反引号解决这个问题:

SELECT `row`, etext FROM [hcd.hdctext] LIMIT 1;

(Qazxswpoi)

有什么方法可以在bigquery中做同样的事情吗?否则我将重新上载我的200M数据并重新开始。似乎更改字段名称不是一个很大的功能..但我对数据的存储方式很天真。

谢谢!

答案

BigQuery Legacy SQL使用Using reserved words in column names作为引用字符。 BigQuery Standard SQL使用反引号。

因此,对于Legacy SQL,只需使用

[]

如果你想永久地重命名它,目前还没有办法,但你可以在查询中重命名它并保存结果...只需使用

SELECT [row], etext from [hcd.hdctext]

并指定“允许大结果”和目标表名称。

另一答案

SELECT [row] as newname, .... FROM [hcd.hdctext] - CTRL-F“括号”,它将带您直接访问文档中的段落。

这是迟了多年,但根据DOCS的建议,这里是文档的链接以供将来参考。我无法将其作为直接回复发布,但问题很久以前就被标记为已回答。

以上是关于哎呀!使用保留字来命名列的主要内容,如果未能解决你的问题,请参考以下文章

第四章 数据查询(上)

通过使用 Python 插入代码字来修改语料库

java BottomBarNavigation代码保留片段状态

Realm保留一个已删除的对象

PopBackStack 但将第一个片段保留在 android

是否可以在 OnStop() 回收所有数据并使用保留片段?