小编Noa*_*son的帖子

如何在 SQL 中的动态列表上使用 IN 子查询?

我正在 google Big Query 上进行查询,并尝试添加一个变量表,以便更轻松地更改我的查询选择的内容,但在进行查询时遇到以下错误:

Cannot execute IN subquery with uncomparable types INT64 and STRUCT<INT64, INT64>

查询为:

WITH vars AS (
  SELECT (3,6) as ids
)
SELECT id FROM users
WHERE id IN (SELECT ids FROM vars);
Run Code Online (Sandbox Code Playgroud)

这很令人困惑,因为我认为这正是IN子查询的用途。我不明白为什么该查询失败,而以下查询工作正常:

SELECT id FROM users
WHERE id IN (3,6);
Run Code Online (Sandbox Code Playgroud)

这里有什么问题,有解决办法吗?

sql google-bigquery

1
推荐指数
1
解决办法
2084
查看次数

标签 统计

google-bigquery ×1

sql ×1