获取MySQLdb中的行数

时间:2016-01-06 00:06:47

标签: python mysql-python

有没有更好的方法来获取行数而不是执行以下操作?

cursor.execute("SELECT DISTINCT(provider_id) FROM main_iteminstance")
num_items = len(cursor.fetchall())

上面有MySQLdb的简写吗?

2 个答案:

答案 0 :(得分:2)

您可以直接在cursor.execute上执行以下SQL,而不是依赖于MySQLdb:

cursor.execute("SELECT COUNT(DISTINCT provider_id) FROM main_iteminstance")

然后您只需从该查询中获得结果。

答案 1 :(得分:1)

cursor.execute的结果返回查询返回的行数,因此只需分配给变量。

num_items = cursor.execute("SELECT DISTINCT(provider_id) FROM main_iteminstance")

这也可以,你不必为了获得项目数而运行额外的查询