我在mysql中有一个表,如下所示:
BusinessName ABN Status CountOfRecordsPerBusinessName abccompany 123 Registered 2 abccompany null Deregistered 2
如果企业名称是重复的,并且abn=null表示注销,而不是null表示注册状态,那么我想将null abn设置为123。我该怎么做?
htzpubme1#
我们可以尝试在此处执行更新自联接:
UPDATE yourTable t1 INNER JOIN yourTable t2 ON t1.BusinessName = t2.BusinessName AND t1.ABN IS NULL AND t2.ABN IS NOT NULL SET t1.ABN = t2.ABN;
这里的基本思想是加入一个给定的业务记录 ABN 是 NULL 同一家公司的人 ABN 不是 NULL . 然后,穿过非公路NULL ABN 从第二条记录到第一条记录的值。我们不必担心意外地更新非重复项,因为对于那些非重复项,连接条件总是会失败。
ABN
NULL
1条答案
按热度按时间htzpubme1#
我们可以尝试在此处执行更新自联接:
这里的基本思想是加入一个给定的业务记录
ABN
是NULL
同一家公司的人ABN
不是NULL
. 然后,穿过非公路NULL
ABN
从第二条记录到第一条记录的值。我们不必担心意外地更新非重复项,因为对于那些非重复项,连接条件总是会失败。