小编Kuc*_*sky的帖子

子查询返回 duckDB 中的多列

我想分组first_name并为每个fist_name得到最低的age
我在在线sql编译器中运行的查询工作正常,但是当我尝试在python中使用duckDB时,我收到错误,我尝试返回多个列,但这正是我想要的:

duckdb.BinderException: Binder Error: Subquery returns 2 columns - expected 1
LINE 4: WHERE (first_name, age) IN (
Run Code Online (Sandbox Code Playgroud)

我的数据:

customer_id  first_name  last_name  age  country
1            John        Doe        31   USA
2            Robert      Luna       22   USA
3            David       Robinson   22   UK
4            John        Reinhardt  25   UK
5            Betty       Doe        28   UAE
Run Code Online (Sandbox Code Playgroud)

sql查询在在线编译器中运行:

SELECT * 
FROM customer
WHERE (first_name, age) IN (
  SELECT first_name, min(age)
  FROM customer
  GROUP BY first_name
)
Run Code Online (Sandbox Code Playgroud)

python 脚本以错误结束

import pandas as …
Run Code Online (Sandbox Code Playgroud)

python sql duckdb

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

标签 统计

duckdb ×1

python ×1

sql ×1