Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么在大查询中运行sql时,会得到一个意外的关键字间隔?_Sql_Google Bigquery - Fatal编程技术网

为什么在大查询中运行sql时,会得到一个意外的关键字间隔?

为什么在大查询中运行sql时,会得到一个意外的关键字间隔?,sql,google-bigquery,Sql,Google Bigquery,我得到了这个sql,我正试图在BigQuery中运行它。我收到这个错误: 意外关键字间隔 SELECT studio."Location" as location ,CONCAT(users.first_name, ',', users.last_name) AS username , COUNT(events.created_at) AS events FROM xxx JOIN zzz ON z_kf_asset = asset.z_kp JOIN client ON

我得到了这个sql,我正试图在BigQuery中运行它。我收到这个错误:

意外关键字间隔

SELECT studio."Location" as location ,CONCAT(users.first_name, ',', users.last_name) AS username , COUNT(events.created_at) AS events    
FROM xxx    
JOIN zzz ON z_kf_asset = asset.z_kp    
JOIN client ON production.z_kf_client = client.z_kp    
JOIN studio ON client.z_kf_studio = studio.z_kp    
JOIN events ON events.asset_id = asset.z_kp    
JOIN users ON events.user_id = users."id"    
WHERE post_history IS NOT NULL    
AND events.created_at BETWEEN LOCALTIMESTAMP - INTERVAL '7 days' AND LOCALTIMESTAMP    
AND client.display_name = 'xxxxx'    
AND events.description = 'xxxxxxxx'    
GROUP BY location, username

非常感谢您的帮助

尼克在评论中给出了正确的答案。为完整起见,请在此转录:

而不是:

localtimestamp - INTERVAL '7 days'
做:

例如:

SELECT '2018-01-9' BETWEEN TIMESTAMP_SUB(localtimestamp, INTERVAL 7 DAY) AND localtimestamp
FROM (SELECT TIMESTAMP('2018-01-15') localtimestamp)

我认为BigQuery不支持这样的日期数学(即使用
-
操作符)。而且
“7天”
应该是
7天
。试试
DATE\u SUB(本地时间戳,间隔7天)
谢谢,它成功了!!!这一个怎么样?client.display_name='xxxxx',显然不接受=。无法获取它。因此,应该是“和events.created”和“在日期和时间之间创建”和“SUB(LOCALTIMESTAMP,INTERVAL 7 DAY)”以及“LOCALTIMESTAMP和client.display”\u name='xxx'和events.description='xxxx'?非常感谢!
SELECT '2018-01-9' BETWEEN TIMESTAMP_SUB(localtimestamp, INTERVAL 7 DAY) AND localtimestamp
FROM (SELECT TIMESTAMP('2018-01-15') localtimestamp)