更詳細(xì)問(wèn)題請(qǐng)查看SQLite官方文檔:SQLite文檔
-
需求
查詢返回滿足條件的第一條或者最后一條記錄
-
數(shù)據(jù)源
在這里插入圖片描述
-
獲取查詢結(jié)果的第一條記錄
獲取所有查詢結(jié)果
SELECT * FROM student where age>9
在這里插入圖片描述
(1)limit
SELECT * FROM student where age>9 limit 1
在這里插入圖片描述
注意:不能是limit 1,1(返回第二條),也不能是limit 0,0 (沒有數(shù)據(jù)返回)
(2)min(rowid)
SELECT min(rowid),* FROM student where age>9
在這里插入圖片描述
問(wèn)題:當(dāng)使用order by 排序后,min(rowid)獲取的數(shù)據(jù)不是符合條件的第一條,rowid是插入數(shù)據(jù)時(shí),系統(tǒng)自動(dòng)記錄的id。對(duì)比下面兩組查詢結(jié)果
image
在這里插入圖片描述
-
獲取查詢結(jié)果的最后一條記錄
max(rowid)
在這里插入圖片描述
問(wèn)題:同樣max也有同樣的問(wèn)題,如果要排序的話,倒序然后通過(guò)limit獲取第一條數(shù)據(jù)
-
代碼解決
那就是將查詢結(jié)果全部返回,獲取list的一個(gè)或者最后一個(gè)(不建議)
能用sql解決的不用代碼處理
-
limit擴(kuò)展
用法:
select * from tableName limit i,n
參數(shù):
tableName : 為數(shù)據(jù)表;
i : 為查詢結(jié)果的索引值(默認(rèn)從0開始);
n : 為查詢結(jié)果返回的數(shù)量
排序問(wèn)題
Android數(shù)據(jù)庫(kù)SQLite排序問(wèn)題一:字符串類型的數(shù)值排序
Android數(shù)據(jù)庫(kù)SQLite排序問(wèn)題二:含有空值的排序