没有办法。数据库理论中的一个规则就是 集合(表)中的元组(记录) 是没有顺序的。 也就是说记录的物理顺序由数据库管理系统自身来确定,而不是你插入时的先后顺序。所以如果你的表中没有这个排序字段,则无法直接得到最后一条记录。如果有排序字段 ford 则 select * from table1 order by ford desc limit 1
如果有排序字段fordselect * from table1 order by ford desc limit 1也是遍历了数据表啊,虽然控制的是limit 1
SELECT A.* FROM TT A INNER JOIN (SELECT MAX(ID) AS MA FROM TT) B ON A.ID=B.MA
select * from table1 order by ford desc limit 1
(SELECT MAX(ID) AS MA FROM TT) B ON A.ID=B.MA
SELECT MAX(ID) AS MA FROM TT
这不也是遍历表找到最大的id吗