gpt4 book ai didi

mysql - 根据与另一个表的连接更新空白记录

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

我有一个表,其中某些记录包含一列值为零。现在我想写一个作业,它将根据键从另一个表中获取记录并在第一个表中更新。

它是一种基于与表 B 的连接更新表 A,其中 A 某些记录为空。

我尝试使用临时表的语法来首先获取该列包含零的所有记录,然后使用连接到三个表,一个需要更新,一个是临时表,最后一个是我将从中获取原始表的值(value)。

DROP TABLE IF EXISTS `blank_raw_ids`;

CREATE TEMPORARY TABLE blank_raw_ids (SELECT * FROM ct where ct.rawid=0);



UPDATE ct
INNER JOIN main_raw_ids as m ON ct.bid=m.bid
INNER JOIN blank_raw_ids as r ON r.bid =m.bid
SET ct.rawid=r.rawid;

我还觉得我无法正确使用临时表,因为我仍在连接主表和空白表。

最佳答案

但是 blank_raw_ids 只有 rawid=0 的行,所以如果你设置 ct.rawid=r.rawid 你总是 set 0 = 0 没有实际效果。

我想我知道您想复制 main_raw_ids.rawid 的值来替换 ct.rawid,其中 ct.rawid 是 0。

下面的不会那样做吗?

UPDATE ct
INNER JOIN main_raw_ids AS m ON ct.bid=m.bid
SET ct.rawid = m.rawid
WHERE ct.rawid = 0;

不需要临时表。

关于mysql - 根据与另一个表的连接更新空白记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58157375/

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