Sqlite中提供的方法和Mysql的一样,也是通过关键字limit限制。
SQL1
SQL2
LIMIT子句限定行数的最大值。负的LIMIT表示无上限。后跟可选的OFFSET说明跳过结果集中的前多少行。在一个复合查询中,LIMIT子句只允许出现在最终SELECT语句中。限定对于所有的查询均适用,而不仅仅是添加了LIMIT子句的那一行。注意OFFSET关键字用于LIMIT子句中,则限制值是第一个数字,而偏移量(offset)是第二个数字。若用逗号替代OFFSET关键字,则偏移量是第一个数字而限制值是第二个数字。这是为了加强对遗留的SQL数据库的兼容而有意造成的矛盾。
SQL1查询当前表前10条记录,SQL2查询当前表前10条之后的15条记录,SQL2中的10是偏移量。
下面是一个哥们给出的其它数据库查询指定行数数据的方法
SQL1
select t.user_id,random() as Random from udb_user t limit 10;SQL2
select t.user_id,random() as Random from udb_user t limit 10,15;LIMIT子句限定行数的最大值。负的LIMIT表示无上限。后跟可选的OFFSET说明跳过结果集中的前多少行。在一个复合查询中,LIMIT子句只允许出现在最终SELECT语句中。限定对于所有的查询均适用,而不仅仅是添加了LIMIT子句的那一行。注意OFFSET关键字用于LIMIT子句中,则限制值是第一个数字,而偏移量(offset)是第二个数字。若用逗号替代OFFSET关键字,则偏移量是第一个数字而限制值是第二个数字。这是为了加强对遗留的SQL数据库的兼容而有意造成的矛盾。
SQL1查询当前表前10条记录,SQL2查询当前表前10条之后的15条记录,SQL2中的10是偏移量。
下面是一个哥们给出的其它数据库查询指定行数数据的方法
http://blog.youkuaiyun.com/unixpro/archive/2007/03/20/1534561.aspx
各种不同数据库查询前几行/后几行的sql语句
SqlServer
select top 10 * from tablename;
Informix
select first 10 * from tablename;
Oralce
select * from tablename where rownum<=10;
MySql
select * from tableName limit 10
本文介绍了在Sqlite中如何使用LIMIT子句进行分页查询,包括查询指定数量的记录和从特定偏移量开始查询的方法。同时对比了其他数据库如Mysql、Oracle等的类似查询语句。
446

被折叠的 条评论
为什么被折叠?



