Sql撈出最後一筆

在SQL中,要撈出最後一筆資料,可以使用ORDER BY子句搭配LIMIT子句來達成。以下是一個簡單的例子,假設我們有一個名為users的表格,其中包含一個id欄位,我們想要撈出這個表格中的最後一筆資料:

SELECT *
FROM users
ORDER BY id DESC
LIMIT 1;

這個查詢會將資料依照id欄位降冪排序(DESC),然後只取第一筆(LIMIT 1),這就是最後一筆資料。

請注意,LIMIT子句會在資料排序後才開始作用,所以如果你的資料表有索引,排序的效率會很高。此外,ORDER BY子句後面的欄位必須是表格中的索引欄位,否則排序的效率會很差。

如果你想要撈出最後一筆資料,但是id欄位不是索引欄位,或者你想要撈出最後一筆資料的條件不是id欄位,你可能需要使用其他方法,例如使用MAX()函數來找出最大的欄位值,然後根據這個值來撈出資料。

SELECT *
FROM users
WHERE id = (SELECT MAX(id) FROM users);

這個查詢會先查詢users表格中最大的id值,然後使用這個值來撈出最後一筆資料。