我反复从数据库中进行选择,并希望加快通话速度。我正在调用的数据库表被排序,以便我正在寻找的值一个接一个地定位。所以,如果我找到一个然后如果下一个不等于我正在寻找的值,我就不再需要搜索了。当前代码继续搜索整个数据库 - 如何在首次查找后首次找不到后退出?
def select_all_where(cursor, col_name, table_name, colval):
sql = "SELECT * FROM "+table_name+ " WHERE "+col_name+" = "+"'"+colval+"'"
cursor.execute(sql)
rows = cursor.fetchall()
return rows
示例表:
Id TableId Attribute Value
1 23 'name' 'fred'
2 23 'name' 'sue'
3 2 'type' 'person'
例如我正在寻找所有TableId ='23',一旦id> 2,我就不再需要搜索了。