首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >bigquery中文字和别名at之间的空白缺失

bigquery中文字和别名at之间的空白缺失
EN

Stack Overflow用户
提问于 2021-04-13 12:39:31
回答 3查看 9.5K关注 0票数 2

我有一个SQL查询:

代码语言:javascript
运行
复制
SELECT job_id 
FROM user_job fb 
WHERE extract(date from timestamp) BETWEEN extract(Date from 2021-03-17)

我得到了一个错误:

google.api_core.exceptions.BadRequest: 400语法错误:在1:137

中缺少文字和别名之间的空白

EN

回答 3

Stack Overflow用户

发布于 2021-04-13 15:17:24

BigQuery根据上下文自动识别格式良好的日期。在您的情况下,您的查询可以在

代码语言:javascript
运行
复制
SELECT
    job_id
FROM
    user_job
WHERE
    `timestamp` BETWEEN "2021-03-17" AND "2021-03-31"

这里最重要的是引号:您的日期必须在单引号或双引号中,而且在这里,由于“时间戳”是一个BigQuery函数,您需要通过使用回引号来指定它的列名(或者根据您的需要使用别名,而不是必要的),实际上,-BQ理解后引号是不必要的--但是它更清晰)

票数 5
EN

Stack Overflow用户

发布于 2021-04-13 12:44:23

您需要将日期时间放入DATETIME 'xxxxx'

代码语言:javascript
运行
复制
SELECT job_id 
FROM user_job fb 
WHERE extract(date from fb.timestamp) BETWEEN extract(Date from '2021-03-17T14:26:56') and extract(Date from '2021-03-31T14:26:56')
票数 2
EN

Stack Overflow用户

发布于 2022-07-13 05:28:11

我也有同样的错误,只有代码400

结果,数据库的名称以数字开头,因此在这种情况下,数据库的名称需要引用:

示例:如果数据库名为“1测试”,而不是

代码语言:javascript
运行
复制
SELECT * FROM 1Test.table1

它应该是:

代码语言:javascript
运行
复制
SELECT * FROM `1Test.table1`
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67075060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档