【发布时间】:2018-12-15 09:59:57
【问题描述】:
在我的数据库中,我有一个表。
statement= """create table itags(
tag_id number(10) not null primary key,
tag_name varchar2(50)
)"""
cur.execute(statement)
cur.execute("INSERT INTO itags VALUES(301,'Art')")
cur.execute("INSERT INTO itags VALUES(302,'Science')")
cur.execute("INSERT INTO itags VALUES(303,'Music')")
...
so on and so forth
...
现在我想选择并打印出现频率最高的标签名称。
如果我这样做:
cur.execute("select tag_name from itags")
res= cur.fetchall()
print(res)
我将获得一个包含我存储在该表中的标记名称的元组列表。 前任: [(艺术,),(科学,),(音乐,),....]
现在我应该如何从这个元组列表中提取出现次数最多的字符串?另外,SQL 命令会比 python 代码更有帮助吗?
【问题讨论】:
-
数据汇总最好在数据层完成。想一想,如果您必须在本地处理 1000 万条记录,则必须在本地传输数据然后进行汇总。如果您将工作推送到数据库,则数据已经存在并且可以“汇总”发送 1 条记录的数据。不仅您的用户会更快乐,您的网络管理员也会更快乐。所以 SQL 命令会比 python 代码更有帮助。
标签: sql python-3.x select oracle11g cx-oracle