mySQL 使用另一个 table 的 concat 更新列
mySQL update column with concat of another table
经验>新手,68/m
MySQL> 5.5.46-0+deb7u1
数据库>服饰
有两个 tables> femme PRIMARY = id, colors PRIMARY = c_id
我需要修改(或更新...)tablefemme
id Name Fav_Colors City
1 Joe red Athens
1 Rea grey Rome
table colors
必须将其数据贡献给 table femme 替换上面的颜色(用一些标签调味):
c_id Name Pref_Color City City_color
1 Joe yellow Athens blue
2 Rea green Rome black
当 femme
一开始是 TRUNCATE(d) 时一切正常,导致修改后的 femme
table 如下所示:
TRUNCATE TABLE `femme`;
REPLACE INTO `femme`(`id`, `name`, `Fav_Colors`, `City`)
SELECT
CONCAT ('
c_id,
Name,
<div>', colors.Pref_Color, ' - ', colors.City_color,'"</div>',
City
')
from colors;
id Name Fav_Colors City
1 Joe <div>yellow - blue</div> Athens
1 Rea <div>green - black</div> Rome
我只需要替换 Fav_Colors
列即可,但以下内容不起作用:
REPLACE INTO `femme`(`Fav_Colors`)
SELECT
CONCAT ('
<div>', colors.Pref_Color, ' - ', colors.City_color,'"</div>'
')
from colors;
能否请您协助找到解决此问题的方法?谢谢。
看来您需要一个简单的 UPDATE
。
femme.id
是否总是对应于 colors.c_id
?如果是这样,你可以这样做:
UPDATE femme
JOIN colors ON femme.id = colors.c_id
SET femme.Fav_Colors =
CONCAT('<div>', colors.Pref_Color, ' - ', colors.City_color,'</div>')
经验>新手,68/m
MySQL> 5.5.46-0+deb7u1
数据库>服饰
有两个 tables> femme PRIMARY = id, colors PRIMARY = c_id
我需要修改(或更新...)tablefemme
id Name Fav_Colors City
1 Joe red Athens
1 Rea grey Rome
table colors
必须将其数据贡献给 table femme 替换上面的颜色(用一些标签调味):
c_id Name Pref_Color City City_color
1 Joe yellow Athens blue
2 Rea green Rome black
当 femme
一开始是 TRUNCATE(d) 时一切正常,导致修改后的 femme
table 如下所示:
TRUNCATE TABLE `femme`;
REPLACE INTO `femme`(`id`, `name`, `Fav_Colors`, `City`)
SELECT
CONCAT ('
c_id,
Name,
<div>', colors.Pref_Color, ' - ', colors.City_color,'"</div>',
City
')
from colors;
id Name Fav_Colors City
1 Joe <div>yellow - blue</div> Athens
1 Rea <div>green - black</div> Rome
我只需要替换 Fav_Colors
列即可,但以下内容不起作用:
REPLACE INTO `femme`(`Fav_Colors`)
SELECT
CONCAT ('
<div>', colors.Pref_Color, ' - ', colors.City_color,'"</div>'
')
from colors;
能否请您协助找到解决此问题的方法?谢谢。
看来您需要一个简单的 UPDATE
。
femme.id
是否总是对应于 colors.c_id
?如果是这样,你可以这样做:
UPDATE femme
JOIN colors ON femme.id = colors.c_id
SET femme.Fav_Colors =
CONCAT('<div>', colors.Pref_Color, ' - ', colors.City_color,'</div>')