python - 计算 sql-alchemy 中的唯一行数

标签 python sqlalchemy flask-sqlalchemy

我是 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/

相关文章:

python - 用 Pillow 像素化图像

python - 如何在没有样板代码的情况下将 pandas 系列的内容分配给 sqlAlchemy 类实例?

python - 为什么 key 会是:value pair not be added to a Dictionary?

python - 我可以使用 SQLAlchemy 有两个外键引用同一个表中的不同记录吗?

python - 如何以 wtf flask 形式发送隐藏字段以进行数据库插入

sqlalchemy - Flask-SQLAlchemy 不会更新或删除一行

python - 分解数组数组-(Dataframe)pySpark

python - Emacs Pabbrev 和 Python

python - Homebrew 没有正确链接 python?

python - SQLALCHEMY_DATABASE_URI 与 Azure Mysql