Tôi có một bảng với ba cột như sau:SQLite: Chọn giá trị tương ứng tối đa
id INTEGER name TEXT value REAL
Làm thế nào tôi có thể chọn value
tối đa id
?
Tôi có một bảng với ba cột như sau:SQLite: Chọn giá trị tương ứng tối đa
id INTEGER name TEXT value REAL
Làm thế nào tôi có thể chọn value
tối đa id
?
Lấy hồ sơ với các ID lớn nhất đầu tiên, sau đó dừng lại sau khi kỷ lục đầu tiên:
SELECT * FROM MyTable ORDER BY id DESC LIMIT 1
Nếu bạn muốn biết cú pháp truy vấn:
String query = "SELECT MAX(id) AS max_id FROM mytable";
Cũng giống như mysql, bạn có thể sử dụng MAX()
ví dụ SELECT MAX(id) AS member_id, name, value FROM YOUR_TABLE_NAME
Tôi muốn chọn giá trị không phải id. – abidinberkay
Tôi đã cập nhật mã của mình. Điều đó sẽ hoạt động ngay bây giờ – Lian
xin lỗi Tôi quên lưu chỉnh sửa của tôi – Lian
Hãy thử điều này:
SELECT value FROM table WHERE id==(SELECT max(id) FROM table));
'==' không tồn tại trong SQL, nếu tôi không nhầm. – RichouHunter
Nó tồn tại trong SQLite: https://sqlite.org/lang_expr.html – sergi
Được rồi, đủ công bằng. – RichouHunter
Truy vấn trên Tìm kiếm n bản ghi, sau đó sắp xếp bản ghi n, sau đó nhận được 1 bản ghi ... ?????? truy vấn này có hiệu quả không, nó cần điều chỉnh. Dưới đây câu trả lời của @Newbie là tốt hơn nhiều về hiệu quả. –
Trong truy vấn LIMIT * n *, SQLite chỉ giữ * n * hàng lớn nhất trong khi sắp xếp. Và nếu cột được lập chỉ mục, không cần sắp xếp. –