google-bigquery - Legacy SQL - 此查询如何编译?
问题描述
我在 Legacy SQL 中遇到了一个令人惊讶的行为。事实上,我无意中启动了这个查询(我以'[[date]]'
编程方式替换了它,我只是忘记在 UI 中替换它):
SELECT DATE(ComputationDate) as date
FROM [project:dataset.table]
WHERE DATE(ComputationDate) < '[[date]]'
ORDER BY date
它奏效了!我检索到今天为止的所有数据。这在标准 SQL 中失败了,但这是预期的行为吗?
这不是什么大问题,但如果我的替换失败,我无法从代码中看到它,因为查询仍在编译。
谢谢
解决方案
低于版本(BigQuery Legacy SQL)将不返回任何行,这可以很好地指示您出现问题
#legacySQL
SELECT DATE(ComputationDate) as date
FROM [project:dataset.table]
WHERE DATE(ComputationDate) < DATE('[[date]]')
ORDER BY date
推荐阅读
- postgresql - 从出现次数超过 n 的联接表中选择行
- javascript - Polymer 3:文本到 HTML
- asp.net-core - 是否可以使用 Core SignalR 进行音频或视频通信
- javascript - 响应没有用 axios 带回数据
- oracle - 如何在输入为数字形式时将输出作为文本获取
- asp-classic - 上传后的访问请求(ASP经典)
- git - 从历史记录中删除未合并的 git 分支
- wordpress - 滑块革命没有 YouTube 视频的声音
- android - aaptOptions 不为“com.android.library”项目付出努力
- android - Cordova 插件对话框确认不会将响应发送到在 android 中调用的函数,但它会在 web 上发送