gpt4 book ai didi

python - SQLAlchemy 中格式方便的 SELECT

转载 作者:太空宇宙 更新时间:2023-11-04 05:08:36 25 4
gpt4 key购买 nike

我是 SqlAlchemy 的新手,我正在寻找这样的东西:

表格

CATEGORY VALUE     ORDER
cat_1 val_11 1
cat_1 val_12 2
cat_2 val_21 1
cat_1 val_13 3
cat_3 val_31 1

方便检索结果:{“cat_1”:(val11,val12,val13),“cat_2”:(val_21),“cat_3”:(val_31)}

我试图避免编写一个按类别区分的查询,然后按类别遍历类别列表查询值

最佳答案

MySql 没有数组类型(与大多数其他 RDBMS 系统不同),因此不可能将列聚合到数组中。

在 mysql 中可以做的最接近的事情是使用 group_concat 函数,它返回一个逗号分隔的列表(或者您可以指定一个自定义分隔符)

from sqlalchemy import func
q = session.query(
Table.category,
func.group_concat(Table.value).label('group_values')
).group_by(Table.category).all()

然后,遍历结果集并将字符串拆分为 python 中的列表。

关于python - SQLAlchemy 中格式方便的 SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43681116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com