如何选择MySQL表中的最后一行?
我正在插入数据,我需要从上一行检索列值.
(我顺便使用PHP.)table1是这样的
table1
******************
cate_id | task_id | start_date | end_date | line |
1 2 30/04/2012 26/06/2012 text
3 1 26/06/2012 27/06/2012 text
2 1 27/06/2012 01/01/9999 text
Run Code Online (Sandbox Code Playgroud)
那张NO an auto_increment桌子就在那里.
我的情况是更新表中现有的最后一行,然后插入一个新行.
你编辑了问题,这里是更新
SELECT MAX(cate_id) AS last_cate_id FROM table;
Run Code Online (Sandbox Code Playgroud)
或者你可以获得下一个ID:
SELECT MAX(cate_id)+1 AS next_cate_id FROM table;
Run Code Online (Sandbox Code Playgroud)
没有事务,这很容易插入相同的cate_id!
如果您无法使用它们,例如因为MyISAM,您可以使用select插入.
INSERT INTO table
(cate_id, task_id ..)
VALUES
( (SELECT MAX(cate_id)+1 AS next_cate_id FROM table), 1 )
Run Code Online (Sandbox Code Playgroud)