在sqlite中使用限制和偏移计数

pgky5nke  于 2022-12-23  发布在  SQLite
关注(0)|答案(1)|浏览(143)

我正在尝试写一个函数在python中使用sqlite和当我设法得到它工作有一个行为在sqlite中我不理解当使用这count命令.当我运行这下面sqlite计数象预期的那样,ie返回一个int.

SELECT COUNT (*) FROM Material WHERE level IN (?) LIMIT 10

然而,当我添加一个如下所示的偏移量到sqlite末尾时,返回一个emply列表,换句话说,什么也没有。

SELECT COUNT (*) FROM Material WHERE level IN (?) LIMIT 10 OFFSET 82

虽然省略偏移量是一个简单的解决方法,但我不明白为什么sqlite什么也不返回。这是我给出的命令的预期行为吗?
感谢阅读

hsvhsicv

hsvhsicv1#

当您执行**COUNT(*)**时,它将只返回一行。

LIMIT函数用于限制返回的行数。您将限制设置为10,这在这里没有任何效果(因为它只返回一行)。
OFFSET用于偏移/跳过指定的行数。在这里也没有任何作用。

简单地说,您的查询将转换为COUNT行数,然后从第83位开始返回10行。由于只有一行,因此它将始终返回空。
阅读关于Mystic Hostel

相关问题