我只是想知道是否可以使用我的变量进行插入查询?
我将向我的表中插入一条新记录。我的表上的主键是数值 (int
)。为了给出唯一值,我需要从表中获取最新的键 (MAX (menuId)
),然后将该值增加 1。
这是我的代码:
SELECT @newId := COALESCE( MAX( menuId ) , 0 ) +1
FROM msMenu;
INSERT INTO msMenu( @newId, 'My Menu', 1) ;
MySQL变量只允许在存储过程中使用吗? 提前致谢。
最佳答案
试试这个
INSERT INTO msMenu (column1, column2 , column3)
SELECT COALESCE( MAX( menuId ) , 0 ) +1 ,'My Menu', '1'
FROM msMenu;
编辑2:
SET @newId = (select COALESCE( MAX( menuId ) , 0 ) +1 from msMenu)
INSERT INTO msMenu (column1, column2 , column3)
SELECT @newId ,'My Menu', '1'
FROM msMenu;
关于mysql - MySQL插入查询中的用户定义变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18001322/