我正在使用 lsqlite3 lua 包装器,并且正在对数据库进行查询。我的数据库有大约 500 万行,我用来检索行的代码类似于:
db = lsqlite3.open('mydb')
local temp = {}
local sql = "SELECT A,B FROM tab where FOO=BAR ORDER BY A DESC LIMIT N"
for row in db:nrows(sql) do temp[row['key']] = row['col1'] end
如您所见,我正在尝试N
按降序对顶行进行排序FOO
(我想获取顶行,然后应用而LIMIT
不是相反)。我为该列编制了索引,A
但似乎没有太大区别。我怎样才能让它更快?