gpt4 book ai didi

mysql - 使用另一个表中的数据更新行

转载 作者:行者123 更新时间:2023-11-29 07:21:16 27 4
gpt4 key购买 nike

我有一个包含以下表格的 mysql 数据库。

驱动表

  id    name    vehicleId
-------------------------
1 bob 1
2 jim 1
3 rob 2
4 tim 2
5 sue 3

车辆表

  id      model
---------------
1 civic
2 cr-v
3 camry
4 corolla

我希望能够使用车辆模型更新给定驾驶员的车辆。

我能够使用,

UPDATE driver, vehicle
SET vehicleId = vehicle.id
WHERE driver.name = "bob"
AND vehicle.model = "corolla";

但这似乎不是最佳/正确的解决方案。从我读过的内容来看,我似乎应该能够使用连接来完成此操作,但我在使用该方法时没有任何运气。

是基于连接的解决方案更好还是我的解决方案还好?

提前致谢!

最佳答案

你的表述很好,虽然我更喜欢 CROSS JOIN 而不是 ,

您还可以使用子查询来表达这一点:

UPDATE driver 
SET vehicleId = (SELECT v.id FROM vehicle v WHERE v.model = 'corolla')
WHERE name = 'bob';

关于mysql - 使用另一个表中的数据更新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56246058/

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