许多任务需要向数据库添加新记录并随后访问它们。传统上,这涉及单独的插入和检索操作。但是您知道可以在单个查询中完成这两项任务吗?
原子插入和选择值
关键在于利用 LAST_INSERT_ID() 函数。执行插入语句后,此函数返回为新插入的行生成的 ID。
示例:
让我们考虑问题中提供的示例:
<code class="sql">INSERT INTO `items` (`item`, `number`, `state`) (SELECT '3', `number`, `state` FROM `item_bug` WHERE `id`='3')</code>
要获取插入行的 ID 并检索其其他值,您可以执行以下查询:
<code class="sql">SELECT * FROM `items` WHERE `id`= LAST_INSERT_ID()</code>
此查询将从 items 表中获取对应于最后插入的行。
优点:
以上是如何在单个 MySQL 查询中插入行并检索数据?的详细内容。更多信息请关注PHP中文网其他相关文章!