gpt4 book ai didi

涉及join的mysql更新语句

转载 作者:行者123 更新时间:2023-11-29 01:57:00 24 4
gpt4 key购买 nike

我有 2 个 mysql 表,名为 tbl_flatstbl_blocks

我加入这两个表是这样的:

select 
`f`.`fld_id` AS `fld_flat_id`,
`b`.`fld_block_name`,
`f`.`fld_mobile_app_password`,
`f`.`fld_site_id`
from
`tbl_blocks` `b`
left join
`tbl_flats` `f` ON (`f`.`fld_block_id` = `b`.`fld_id`)
where
`f`.`fld_site_id` = 57

显示如下: enter image description here

现在我要做的是将 fld_mobile_app_password 列更新为 NULL。这是我尝试但失败的方法:

    update (select 
`f`.`fld_id` AS `fld_flat_id`,
`b`.`fld_block_name`,
`f`.`fld_mobile_app_password`,
`f`.`fld_site_id`
from
`tbl_blocks` `b`
left join
`tbl_flats` `f` ON (`f`.`fld_block_id` = `b`.`fld_id`) )
set
`f`.`fld_mobile_app_password` = '1a1dc91c907325c69271ddf0c944bc72'
where
`f`.`fld_site_id` = 57

我似乎无法弄清楚问题所在。任何提示都适用

最佳答案

您不能在 MySQL 的子查询中更新列。只需删除子查询:

update `tbl_blocks` `b` join
`tbl_flats` `f`
on `f`.`fld_block_id` = `b`.`fld_id`
set `f`.`fld_mobile_app_password` = '1a1dc91c907325c69271ddf0c944bc72'
where `f`.`fld_site_id` = 57;

内部连接在这里就足够了——where 子句将外部连接转换为内部连接。

关于涉及join的mysql更新语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26058727/

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