2013-05-08 15 views

cevap

18

SELECT MAX(id) AS member_id, name, value FROM YOUR_TABLE_NAME büyük kimlikleri ile kayıtlar, sonra ilk kayıt sonra durdurmak alın:

SELECT * FROM MyTable ORDER BY id DESC LIMIT 1 
+1

Sorgu Aramaları n kayıtları, daha sonra n kayıtları düzenler, sonra 1 kayıt alır ... ?????? Bu sorgu verimli, ayar gerektiriyor. @Newbie'nin yanıtının altında, verimlilik açısından çok daha iyi. –

+4

Bir LIMIT * n * sorgusunda SQLite, sıralama yaparken yalnızca * n * en büyük satırları tutar. Sütun endeksli ise, sıralama yapılmaz. –

1

:

String query = "SELECT MAX(id) AS max_id FROM mytable"; 
7

Sadece mysql gibi kullanabileceğiniz MAX()

örn

+0

ben id değerini değil seçmek istiyor. – abidinberkay

+0

Kodumu güncelledim. Bu şimdi – Lian

+0

çalışmalıdır Düzenleme kaydetmek için unuttum – Lian

0

bu deneyin:

SELECT value FROM table WHERE id==(SELECT max(id) FROM table)); 
+0

'==' Yanılmıyorsam SQL'de mevcut değil. – RichouHunter

+0

SQLite'de mevcut: https://sqlite.org/lang_expr.html – sergi

+0

Tamam, yeterince iyi. – RichouHunter

İlgili konular