有没有更好的方法来获取行数而不是执行以下操作?
cursor.execute("SELECT DISTINCT(provider_id) FROM main_iteminstance")
num_items = len(cursor.fetchall())
上面有MySQLdb
的简写吗?
答案 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")
这也可以,你不必为了获得项目数而运行额外的查询