1. 程式人生 > >Sqlite3查詢指定行數資料

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語句  

  1. SqlServer  
  2.  selecttop 10 * from tablename;  
  3. Informix  
  4. selectfirst 10 * from tablename;  
  5. Oralce  
  6. select * from tablename where rownum<=10;  
  7. MySql  
  8. 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