Solución:
Sí, hay un auto_increment ahí
Si quieres lo último de todas las filas en la tabla, entonces este es finalmente el momento en el que MAX(id)
es la respuesta correcta! Mas o menos:
SELECT fields FROM table ORDER BY id DESC LIMIT 1;
Tenga en cuenta que las tablas de las bases de datos relacionales son solo conjuntos de filas. Y los conjuntos en matemáticas son colecciones desordenadas. No hay primera ni última fila; sin fila anterior o fila siguiente.
Primero tendrá que ordenar su conjunto de filas desordenadas por algún campo, y luego estará libre de iterar a través del conjunto de resultados en el orden que definió.
Dado que tiene un campo de incremento automático, supongo que desea que ese sea el campo de clasificación. En ese caso, es posible que desee hacer lo siguiente:
SELECT *
FROM your_table
ORDER BY your_auto_increment_field DESC
LIMIT 1;
Vea cómo ordenamos primero el conjunto de filas desordenadas por your_auto_increment_field
(o como se le llame) en orden descendente. Luego limitamos el conjunto de resultados a solo la primera fila con LIMIT 1
.
Puede combinar dos consultas sugeridas por @spacepille en una sola consulta que se ve así:
SELECT * FROM `table_name` WHERE id=(SELECT MAX(id) FROM `table_name`);
Debería funcionar increíblemente rápido, pero en las tablas INNODB es una fracción de milisegundo más lento que ORDER + LIMIT.