2013-11-15 67 views
1

sqlite表中我有表格查看,其中我想選擇查詢中添加最後10個記錄。我正在使用以下查詢返回所有記錄,但我希望最後10添加。如何獲取最後10添加記錄在iphone

這裏是查詢

的NSString *選擇= [[NSString的頁頭] initWithFormat:@ 「SELECT * FROM ContentMaster其中ContentAddedByUserID = '%@' 和 HiveletCode = '%@'」 的appDelegate .userID,appDelegate.organizationCode];

我搜索了一些我們可以通過這樣的頂級記錄得到的地方我得到,我們可以使用兩個日期之間的日期獲取任何想法如何獲得沒有日期最後10條記錄。

我想獲取所有最近添加的10個數據。

回答

4

表中的每一行都有一個unique ID,您可以使用您的查詢:

SELECT 
    * 
FROM 
    ContentMaster 
WHERE 
    ContentAddedByUserID='%@' 
AND 
    HiveletCode='%@' 
ORDER BY 
    rowid DESC 
LIMIT 10 
1

documentation,在SQLite的每一行包含一個64位的自動遞增與之相關的ID。
所以,你可以使用查詢作爲

SELECT * FROM ContentMaster WHERE ContentAddedByUserID='%@' AND HiveletCode='%@' 
ORDER BY ROWID DESC 
LIMIT 10 

記住,

  1. 如果你聲明一個普通的表列使用定義的特殊名稱ROWID, _ROWID_, or OID之一,那麼使用該名稱將參考到宣佈專欄不到內部ROWID
  2. 如果一個表包含一個INTEGER PRIMARY KEY類型的列,那麼該列將成爲ROWID的別名。