首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在相同的MySQL表中更新列值等于的行

在相同的MySQL表中更新列值等于的行
EN

Stack Overflow用户
提问于 2018-01-16 12:51:29
回答 2查看 70关注 0票数 0

当列、xID、ID的值相等时,我需要在相同的表中更新行。

这是一个例子:

代码语言:javascript
复制
mysql> SELECT
    Euro,
    ALMACEN,
    Imagen,
    xID,
    ID
FROM
    `tbl_g`
WHERE
    xID IN (2025)
OR ID IN (2025);
+--------+----------+--------+------+------+
| Euro   | ALMACEN  | Imagen | xID  | ID   |
+--------+----------+--------+------+------+
| 7742,8 | ARGUALAS | NULL   | NULL | 2025 |
| NULL   | EMPALME  |        | 2025 | 4441 |
+--------+----------+--------+------+------+
2 rows in set

我尝试了这个SQL查询,但没有成功,因为带有xID号2025的行没有用ID 2025年的值进行更新:

代码语言:javascript
复制
mysql> UPDATE `tbl_g` kkk,
 `tbl_g` jjj
SET kkk.Euro = jjj.Euro
WHERE
    kkk.ID = jjj.xID
AND kkk.xID IS NOT NULL;

Query OK, 0 rows affected
Rows matched: 0  Changed: 0  Warnings: 0

如何解决这个问题?

你能帮帮我吗?

提前感谢您的帮助,真的很感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-16 13:01:24

使用JOIN (自联接)更新表,并使用WHERE子句检查列Euro为null。

查询

代码语言:javascript
复制
update `tbl_g` as `t1`
join `tbl_g` as `t2`
on `t1`.`xID` = `t2`.`ID`
set `t1`.`Euro` = `t2`.`Euro`
where `t1`.`Euro` is null;

注意:有一个满足条件的多行的机会。

票数 0
EN

Stack Overflow用户

发布于 2018-01-16 13:01:10

例如,您需要一个自连接

代码语言:javascript
复制
drop table if exists t;

create table t(Euro  decimal(10,2) , ALMACEN  varchar(20), Imagen int, xID  int, ID  int);
insert into t values
( 7742.80 , 'ARGUALAS' , NULL   , NULL , 2025),
( NULL    , 'EMPALME'  , null   , 2025 , 4441);

update t t1 join t t2 on t2.xid = t1.id
    set t2.euro = t1.euro;

select * from t;

MariaDB [sandbox]> select * from t;
+---------+----------+--------+------+------+
| Euro    | ALMACEN  | Imagen | xID  | ID   |
+---------+----------+--------+------+------+
| 7742.80 | ARGUALAS |   NULL | NULL | 2025 |
| 7742.80 | EMPALME  |   NULL | 2025 | 4441 |
+---------+----------+--------+------+------+
2 rows in set (0.00 sec)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48281730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档