我有一个像这样的数据库
int groupId
int msgId
data
其中主键由groupid+msgid组成,例如有些键是1-1、1-2、1-3、2-1、2-2、2-3等等
所以当插入一个新值时,它是这样做的
INSERT INTO chatMessages (msgId, groupId, ...)
SELECT MAX(msgId)+1, ?, ...
FROM chatMessages
WHERE chatMessages.groupId = ?
有我自己的自动递增排序,比如说序列号在每个组中表现得很好。
现在,当我插入一个新的信息,有什么办法我可以得到 msgId
不做两个单独的请求(例如自动增量id(可检索)
谢谢您
1条答案
按热度按时间qoefvg9y1#
可以设置用户定义的变量:
那你可以用
@last_msgId
在同一mysql连接中的以下查询中,类似于您将使用的方式LAST_INSERT_ID()
正常自动递增。