Sqlite3查詢指定行數資料
Sqlite中提供的方法和Mysql的一樣,也是通過關鍵字limit限制。
SQL1
select t.user_id,random() as Random from udb_user t limit 10;
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是偏移量。
下面是一個哥們給出的其它資料庫查詢指定行數資料的方法
各種不同資料庫查詢前幾行/後幾行的sql語句
- SqlServer
- selecttop 10 * from tablename;
- Informix
- selectfirst 10 * from tablename;
- Oralce
- select * from tablename where rownum<=10;
- MySql
- select * from tableName limit 10
例:
Select * From Account Limit 9 Offset 10;
以上語句表示從Account表獲取資料,跳過10行,取9行
也可以這樣寫 select * from account limit10,9和上面的的效果一樣。
查詢 tableName 表 TYPE = 1 按照ModifiedTime 降序 限制20條,跳過第一條資料
select * from tableName where TYPE = 1 order by ModifiedTime desc Limit 20 Offset 1
引用:
http://blog.sina.com.cn/s/blog_4b7bde1b0100muku.html