错误:无法识别的名称:Google BigQuery
Posted
技术标签:
【中文标题】错误:无法识别的名称:Google BigQuery【英文标题】:Error: Unrecognized name: Google BigQuery 【发布时间】:2018-03-30 09:36:24 【问题描述】:我是 SQL 新手,我正在尝试在 Google BigQuery 中进行如下查询:
SELECT client, begindate, enddate,
LAG(enddate,1) OVER (PARTITION BY client ORDER BY begindate,
client) AS lag,
ROUND(DATE_DIFF(DATE(begindate), lag, DAY)) as diff
FROM
db LIMIT 100;
但它给出了错误“错误:无法识别的名称:滞后于.....”
我真的不明白代码有什么问题;在数据集预览中,我看到新列“lag”已成功创建(当我删除 date_diff 代码时)。那么为什么“滞后”是一个无法识别的名字呢?
【问题讨论】:
列别名不能在定义的同一个选择列表中引用。使用派生表(子查询),然后你可以在它之外引用滞后。 啊,这说明了...... 【参考方案1】:试试这个:
SELECT client,begindate, enddate,lag,
ROUND(DATE_DIFF(DATE(begindate), lag, DAY)) as diff
FROM (
SELECT client, begindate, enddate,
LAG(enddate,1) OVER (PARTITION BY client ORDER BY begindate,
client) AS lag,
FROM
db LIMIT 100;
) AS t
【讨论】:
以上是关于错误:无法识别的名称:Google BigQuery的主要内容,如果未能解决你的问题,请参考以下文章
尝试在 Google Play 上发布我的应用程序时,第 20 行出现错误无法识别的 xmltree 行:'C:“”'
将 Google Map SDK 添加到 iOS6 时将错误无法识别的选择器发送到类
BigQuery 中出现“无法识别的名称:m01_order_datetime_gmt0”错误