用户定义的变量在 MySQL 插入查询

标签: sql MySQL
发布时间: 2015/6/11 22:04:05
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我只想知道是否可能用于插入查询我的变量? 我要去插入新记录到我的桌子。我的表的主键是数字值 ( int )。给一个唯一的值,我需要得到的最新的关键 ( MAX (menuId) ) 从我表然后递增该值由 1。 这里是我的代码:

SELECT @newId := COALESCE( MAX( menuId ) , 0 ) +1
FROM msMenu;

INSERT INTO msMenu( @newId,  'My Menu', 1) ;

只允许在存储过程中的 MySQL 变量吗? 在此先感谢。

解决方法 1:

试试这个

    INSERT INTO msMenu (column1, column2 , column3)
    SELECT  COALESCE( MAX( menuId ) , 0 ) +1 ,'My Menu', '1'  
    FROM msMenu;

EDIT2:

 SET @newId = (select COALESCE( MAX( menuId ) , 0 ) +1 from msMenu)
 INSERT INTO msMenu (column1, column2 , column3)
 SELECT  @newId ,'My Menu', '1'  
 FROM msMenu;
官方微信
官方QQ群
31647020