如何在MySQL中选择ID最高的行?这是我目前的代码:
SELECT * FROM permlog WHERE max(id)
出现错误,有人可以帮助我吗?
答案 0 :(得分:58)
SELECT * FROM permlog ORDER BY id DESC LIMIT 0, 1
答案 1 :(得分:21)
如果它只是您想要的最高ID。和ID是唯一的/ auto_increment:
SELECT MAX(ID) FROM tablename
答案 2 :(得分:19)
对于MySQL:
SELECT *
FROM permlog
ORDER BY id DESC
LIMIT 1
您希望将行从最高到最低id
排序,因此ORDER BY id DESC
。然后你只想要第一个LIMIT 1
:
LIMIT子句可用于约束SELECT语句返回的行数 [...]
使用一个参数,该值指定从结果集开头返回的行数
答案 3 :(得分:14)
SELECT *
FROM permlog
WHERE id = ( SELECT MAX(id) FROM permlog ) ;
如果id
列未被限制为唯一,则会返回id
最高的所有行。
答案 4 :(得分:1)
从TABELNAME中选择MAX(id)
这将标识最大的id并返回值
答案 5 :(得分:1)
假设您有多个记录,用于同一日期或leave_type,但具有不同的id,并且您想要同一日期或leave_type的id的最大数目,因为我也很讨厌这个问题, 所以可以,您可以使用以下查询进行操作:
select * from tabel_name where employee_no='123' and id=(
select max(id) from table_name where employee_no='123' and leave_type='5'
)
答案 6 :(得分:1)
SELECT MAX(ID) FROM tablename LIMIT 1
使用此查询在MySQL表中查找最高ID。
答案 7 :(得分:0)
这是唯一建议的方法,它实际上选择整个行,而不仅是max(id)字段。它使用一个子查询
SELECT * FROM permlog WHERE id =(SELECT MAX(id)FROM permlog)
答案 8 :(得分:0)
SELECT * FROM `permlog` as one
RIGHT JOIN (SELECT MAX(id) as max_id FROM `permlog`) as two
ON one.id = two.max_id