获取此查询返回的数字或行的正确方法是什么?我特别想看看是否没有返回任何结果。
sql = 'SELECT count(*) from table WHERE guid = %s;'
data=[guid]
cur.execute(sql,data)
results = cur.fetchone()
for r in results:
print type(r) # Returns as string {'count': 0L} Or {'count': 1L}
谢谢。
原文由 Matt 发布,翻译遵循 CC BY-SA 4.0 许可协议
results
本身就是一个行对象,在你的情况下(根据声称的print
输出判断),一个字典(你可能配置了一个 类似字典的游标子类);只需访问count
键:因为您使用
.fetchone()
只返回一行,而不是行列表。如果您 没有 使用 dict(-like) 行游标,则行是元组,计数值是第一个值: