sql - BigQuery 模运算符 (%) 在 WHERE 子句中不起作用

标签 sql google-bigquery

当我在 BigQuery 的 WHERE 子句中使用模运算符 (%) 时,

SELECT * from `our-project.data_set1.table1` WHERE the_id % 10 = 0 LIMIT 1000

它被拒绝,错误消息如下;

Error: Syntax error; Illegal input character "%" at [1:50]



我转身就像,
SELECT * from `our-project.data_set1.table1` 
WHERE CAST((the_id / 10) AS INT64) * 10 = the_id LIMIT 1000

然而,这似乎是浪费。

如何在 BigQuery 的 WHERE 子句中使用模运算?

(在这个例子中,我是用标准 SQL 方言写的)

最佳答案

试试 mod(id, 10) = 0而是在 where 子句中

关于sql - BigQuery 模运算符 (%) 在 WHERE 子句中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46951747/

相关文章:

python - 如何在各自分区上插入历史数据

r - 出错时再次循环

python - Big Query 作业的 Python 脚本配置需要 sourceUri 值,但没有 sourceUri

sql - 为什么 Entity Framework 会生成此 SQL?

sql - postgresql - json 对象的键/值查找

php - 如何使用 SQL 选择查询获取特定数据?

java - BigQuery - 如何从 Java 客户端注册 UDF

javascript - 为什么 PhoneGap Android 应用程序在将大量数据插入 SQL 时崩溃?

c# - 防止 ASP.NET Web 应用程序上的 SQL 注入(inject)

permissions - 如何在 Google BigQuery 上设置特定数据集的权限?