可能重复:
如何获取 MySQL 中最后更新行的 ID?
我有我称之为 VAUCER 的表,里面有行 ID、BROJ、TEKST、DATUM、VREME
ID 是主索引 AI,BROJ 是一些数字,TEKST 是 TXT,DATUM 是 DATE,VREME 是一些数字,我把它设为 time();
我想只显示一个最后编辑的记录,而不是所有记录,如何 mysql 查询?
可能重复:
如何获取 MySQL 中最后更新行的 ID?
我有我称之为 VAUCER 的表,里面有行 ID、BROJ、TEKST、DATUM、VREME
ID 是主索引 AI,BROJ 是一些数字,TEKST 是 TXT,DATUM 是 DATE,VREME 是一些数字,我把它设为 time();
我想只显示一个最后编辑的记录,而不是所有记录,如何 mysql 查询?
假设 DATE 类型的 DATUM 具有上次编辑时间的日期,那么您可以执行以下操作:
select * from VAUCER order by DATUM desc LIMIT 1
每次更新行时是否更新 DATE 或 VREME 值?
尝试这个:SELECT * FROM VAUCER ORDER BY DATUM DESC LIMIT 1
假设 DATUM 在每次更改时都会更新
SELECT * FROM `VAUCER` ORDER BY `DATUM` DESC LIMIT 1
使用表中的 TIMESTAMP 列很容易。添加定义为 ON UPDATE CURRENT_TIMESTAMP 的新 TIMESTAMP 列:
ALTER TABLE VAUCER
ADD COLUMN time_stamp_field TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP
MySQL 将在任何更新时将当前日期时间写入单元格,然后您可以轻松找到上次编辑的记录:
select * from VAUCER order by time_stamp_field desc limit 1
这是显示表中最后编辑的 id 的 anwser 现在添加新行并使其成为日期时间 当插入表时
$now=date("Y-m-d H:i:s");
并在 NOW 行中插入 $now
当 mysql 查询执行此操作时
SELECT * FROM SOMETABLE ORDER BY NOW DESC LIMIT 1;