我是 sql alchemy 的新手,我想计算表中的唯一行数,并输出唯一行以及该行的副本数。 假设我有一个这样的表
Table A
--------------
id
address
现在我想获取该表的所有行,但对于具有相同地址的行,我只想获取一行(与哪个 id 无关)。我还想知道某个特定地址有多少个 id。 因此,如果有两个人住在同一个地址“主要街道”(假设 id=4 和 id=12),我希望得到这样的输出(“主要街道”,2),
这是我的开始尝试
query = models.A.query
query = query.add_columns(func.count(models.A.address)).all()
然而,这给了我该表中的总行数。所以我猜 func.count 是错误的函数? 提前致谢 卡尔
最佳答案
count
是正确的函数,但您需要指定要计数的组。下面应该这样做:
q = (session.query(A.address, func.count(A.id).label("# people"))
.group_by(A.address)
).all()
关于python - 计算 sql-alchemy 中的唯一行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31863255/