基础语法:UPDATE table_name set a= value1,set b = value2 WHERE (条件)
但有时候情况比较复杂,涉及到嵌套查询
如下所示,被赋值的内容需要查询才能得到,就需要在嵌套一层。不然就会报错。
UPDATE rim_rp_reportee_dept
SET all_dept_b0101 = (
SELECT
b0101
FROM
(
SELECT
GROUP_CONCAT(re.b0101) b0101
FROM
rim_rp_reportee_dept re
WHERE
is_deleted = 0
AND reporting_id = '5f30a2a790c3f606d252dbeb'
GROUP BY
re.reporting_id
) AS a
),
all_dept_level_value = (
SELECT
level_value
FROM
(
SELECT
GROUP_CONCAT(re.level_value) level_value
FROM
rim_rp_reportee_dept re
WHERE
is_deleted = 0
AND reporting_id = '5f30a2a790c3f606d252dbeb'
GROUP BY
re.reporting_id
) AS a
),
all_dept_under_value = (
SELECT
under_value
FROM
(
SELECT
GROUP_CONCAT(re.level_value) under_value
FROM
rim_rp_reportee_dept re
WHERE
is_deleted = 0
AND reporting_id = '5f30a2a790c3f606d252dbeb'
GROUP BY
re.reporting_id
) AS a
)
WHERE
reporting_id = '5f30a2a790c3f606d252dbeb'
AND is_major = 1