Пользуюсь sqlite.
В базу данных постоянно добавляются строки (с помощью кода). Мне требуется получить последнюю записанную туда строку.
Как это сделать?
Дата добавления записи есть.
Ответ из комментариев от Алексея Шиманского
SELECT
*
FROM
tbl
ORDER BY
created_at DESC
LIMIT 1
Выполните запрос SELECT last_insert_rowid() к бд. Результатом будет запись, содержащая последний добавленный ID.
Если используется autoincrement primary key то можно воспользоваться вот таким запросом select seq from sqlite_sequence where name="table_name". Вернет текущее значение инкремента, что и будем являться ключом на последнюю добавленную запись.
last_insert_rowid() возвращает последний id добавленный в данной сессии. В другой сессии, не делавшей insert данная функция ничего не даст.
– Mike
Feb 05 '16 at 11:51
SELECT smth FROM table ORDER BY column DESC LIMIT 1– Алексей Шиманский Feb 05 '16 at 11:26SELECT * FROM tbl LIMIT 1 OFFSET (SELECT COUNT(*) FROM tbl)-1– Feb 05 '16 at 13:13