如果主题看起来含糊不清,我首先要道歉;我总是很难简洁地构筑它们。完成后,我会进入它。
假设我有一个如下所示的数据库表:
CREATE TABLE The_table(
item_id INTEGER PRIMARY KEY ASC AUTOINCREMENT,
item TEXT);
现在,我有一个非常基本的查询,它将从所述表中获取项目并对其进行排序:
SELECT *
FROM The_table
ORDER BY x;
其中x可以是item_id
或item
。我可以保证两个字段都是可订购的。我的问题是:
有没有办法修改我给出的查询以获得一系列有序元素:例如从表格中的第20个元素到表格中的第40个元素(在订购表格之后)或类似的东西。
任何帮助都将不胜感激。
谢谢,
答案 0 :(得分:1)
是的 - 它被称为"在"之间
SELECT *
FROM The_Table
WHERE item_id BETWEEN 20 AND 40
这正是它所说的 - 它在所提供的两个数字之间寻找一个值。找到范围非常有用;也是反向工作(即不与之相关)。更多see here。
如果您想要排序后的特定行或行组(如更新后的问题所示),您可以使用LIMIT
子句选择一系列条目
SELECT *
FROM The_Table
LIMIT 20, 20
以这种方式使用LIMIT
,第一个数字是表格中的起始点,第二个数字是从该点返回的记录数量。无论该值是什么,该语句将从第20行开始返回20行。