mysql - 如何在 BigQuery 中查询名为 "OR"的列?

标签 mysql sql google-bigquery

不幸的是,我们有一个表,其中有一列的字段名是“OR”。

如果我们尝试查询此表 - “SELECT OR FROM etc.”我们得到一个错误,因为 OR 是一个保留字。

我们如何使用 BigQuery 的旧版 SQL 查询来查询该列? (我们需要那个专栏而不是其他专栏。)

我们认为我们可以使用“SELECT *”和 BigQuery 的“排除”功能,但它们不是遗留 SQL 的一部分,因此我们无法使用它。其他想法?

最佳答案

我在查询 Hacker News 数据集时遇到了这个问题。看来作者添加了一个“作者”列 because they were replicating the API response keys .但是,很难查询和not best practice in database design .

我试过括号:

SELECT
   [by] as author_name
FROM
   `bigquery-public-data.hacker_news.full`
LIMIT
   1000

但收到以下错误:

Syntax error: Unexpected keyword BY at [2:4]

这是一个在 BigQuery 中使用标准 SQL 方言对 Hacker News 数据集进行查询的查询:

SELECT
  b.by as author_name
FROM
  `bigquery-public-data.hacker_news.full` as b
LIMIT
  1000

关于mysql - 如何在 BigQuery 中查询名为 "OR"的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39940258/

相关文章:

google-bigquery - 更改表或选择/复制到带有新列的新表

php - 使用 PDO,我如何确保 UPDATE 语句成功?

mysql - 如何使用 MySQL GUI 工具将字段设为 NULL?

mysql:使用 LIKE 选择多列

mysql - 无法创建表(errno : 150)

google-bigquery - Bigquery多个WITH子句抛出错误

mysql - 如果记录存在则添加 WHERE 子句

sql - 连接具有不同连接列名称的两个表

mysql - Sql-ex.ru - 练习 23

sql - 在 reddit 评论数据集中 - 哪些帖子的评论数上升到 1000 条最快?