我有一个非常简单的查询,我正在使用pymysql执行:
SELECT `id` FROM `records` ORDER BY `id` DESC
records
中有超过150万行。id
是主要键。
这是pymysql的限制吗?如果我一次查询这么多行,我还应该使用其他东西?
您可以将查询分解为几个Smaler查询:
from math import ceil
batch_size = 1000
for start_at in range(int(ceil(total_rows / 1000 * 1.0))):
sql = 'SELECT `id` from `RECORDS` ORDER BY `id` DESC LIMIT %i, %i'
sql = sql % (start_at * batch_size, batch_size)
# fetch rows