gpt4 book ai didi

mysql - 仅使用 MySQL 获取最后插入的 id

转载 作者:行者123 更新时间:2023-11-29 07:25:14 24 4
gpt4 key购买 nike

我希望能够仅使用 mysql 获取 mysql 表中最后插入的 id。

示例:

INSERT INTO groups (name, customer_id)
SELECT
groups.name as name,
'2' as customer_id
FROM products
LEFT JOIN groups ON products.group_id=groups.id
WHERE customer_id=1;

既然我已经从一个用户中选择了一个组,并为另一个用户创建了一个同名的新组,我想更新所有产品以使用新的组 ID,而不是旧的组 ID。

UPDATE products SET
group_id=...last inserted id...
WHERE customer_id=2;

仅使用 mysql 可以吗?

最佳答案

使用LAST_INSERT_ID()

UPDATE products SET
group_id = LAST_INSERT_ID()
WHERE customer_id=2;

这应该有效..

如果 UPDATE 出错,您应该使用事务来防止 INSERT 发生,反之亦然。这有助于保证数据的完整性

START TRANSACTION;

INSERT INTO groups (name, customer_id)
SELECT
groups.name as name,
'2' as customer_id
FROM products
LEFT JOIN groups ON products.group_id=groups.id
WHERE customer_id=1;

UPDATE products SET
group_id = LAST_INSERT_ID()
WHERE customer_id=2;

COMMIT;

关于mysql - 仅使用 MySQL 获取最后插入的 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34761420/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com