mysql-将列值设置为等于插入id?

mysql-将列值设置为等于插入id?,mysql,Mysql,背景: 我有一个数据库表,用于接收的\u msg 该表有两列 id,link\u id 如果消息是其中的第一条消息(基于标准),则其链接id等于其id 如果是对消息的回复,则其链接id等于所回复消息的id 问题: 在初始插入时是否有任何方法将链接id设置为与id相同 目前,我正在进行插入,然后进行另一个查询、更新,并将链接id设置为等于插入id 但是我不喜欢对它使用两个查询。您可以在插入操作后在上使用触发器 但是我强烈建议您对邻接列表树的根使用NULL。我同意。避免触发。NULL-方法更干净。

背景:

我有一个数据库表,用于接收的\u msg

该表有两列

id
link\u id

如果消息是其中的第一条消息(基于标准),则其
链接id
等于其
id

如果是对消息的回复,则其
链接id
等于所回复消息的
id


问题:
在初始插入时是否有任何方法将
链接id
设置为与id相同

目前,我正在进行插入,然后进行另一个查询、更新,并将
链接id
设置为等于
插入id


但是我不喜欢对它使用两个查询。

您可以在插入操作后在
上使用触发器


但是我强烈建议您对邻接列表树的根使用
NULL

我同意。避免触发。
NULL
-方法更干净。
NULL
有一个不幸的缺点,就是被
UNIQUE
约束忽略了查询中的
ID
是什么?OP应该在哪里获得它?ID是ID列的初始值。OP不清楚他们是否对id列使用了自动递增值。如果不是,则将生成的id插入两列。如果是,我同意上面的说法,为初始插入将link_id设置为null。
INSERT into your_table (id, link_id) values (ID, ID);