在 SQL Alchemy 的数组列中查找最频繁的值
Finding most frequent values in column of array in SQL Alchemy
我正在寻找 return 列中最常出现的内容。我知道如何在 SQL 中执行此操作,但在 SQL Alchemy 中不知道。例如,我有这个带有帖子的数据库。每个 post 都有一个文本字段和一个类别字段。我正在按顺序查看 return 前 3 个类别,如下所示:
Post 1: "Text", "Food"
Post 2: "Text", "Games"
Post 2: "Text", "Games"
Post 2: "Text", "News"
Post 2: "Text", "News"
Post 2: "Text", "News"
Post 2: "Text", "Other"
Post 2: "Text", "Food"
会return:
{"News", "Games", "Food"}
假设您分组的列名为 "category":
from sqlalchemy import func, desc
session.query(
func.count(tablename.id).label('qty')
).group_by(tablename.category
).order_by(desc('qty'))
@dylrei 的回答只漏了一位 return 对象和计数器
from sqlalchemy import func, desc
session.query(tablename.category, <--- You need to add this
func.count(tablename.id).label('qty')
).group_by(tablename.category
).order_by(desc('qty'))
我正在寻找 return 列中最常出现的内容。我知道如何在 SQL 中执行此操作,但在 SQL Alchemy 中不知道。例如,我有这个带有帖子的数据库。每个 post 都有一个文本字段和一个类别字段。我正在按顺序查看 return 前 3 个类别,如下所示:
Post 1: "Text", "Food"
Post 2: "Text", "Games"
Post 2: "Text", "Games"
Post 2: "Text", "News"
Post 2: "Text", "News"
Post 2: "Text", "News"
Post 2: "Text", "Other"
Post 2: "Text", "Food"
会return:
{"News", "Games", "Food"}
假设您分组的列名为 "category":
from sqlalchemy import func, desc
session.query(
func.count(tablename.id).label('qty')
).group_by(tablename.category
).order_by(desc('qty'))
@dylrei 的回答只漏了一位 return 对象和计数器
from sqlalchemy import func, desc
session.query(tablename.category, <--- You need to add this
func.count(tablename.id).label('qty')
).group_by(tablename.category
).order_by(desc('qty'))