2012-02-28 24 views
0

我想在我的表找出最高的ID號(設置爲「AUTO_INCREMENT」),我試過找出最大ID表

SELECT * FROM `mytable` WHERE MAX(`id`) 

,但得到

#1305 - FUNCTION xymplydb01.MAX does not exist 

是有沒有其他的方式,我怎麼能得到這個,而不使用max? 謝謝! 羅恩

+0

請指定您的SQL工具及其版本 – 2012-02-28 18:50:28

回答

0

不應該的MAX是SELECT子句中,而不是在where子句:

SELECT MAX('id') as id from 'mytable' 

我沒有想到用MAX函數在where子句中是有效的。

或者,如果你想要的數據行,你可以做一個子查詢,以及:

SELECT * 
FROM 'mytable' 
WHERE id=(
    SELECT max('id') FROM 'mytable' 
) 

使用或不使用MAX在所有

Select * from 'mytable' order by 'id' desc limit 1 

這會抓住最大的ID,只返回該行。

2

使用此語法來代替:

SELECT MAX(id) FROM mytable; 
+0

是的,這樣做,謝謝邁克爾! – cerr 2012-02-28 19:09:57