提问人:beforcom 提问时间:11/17/2023 最后编辑:beforcom 更新时间:11/17/2023 访问量:46
两个表之间的数据匹配 SQL [已关闭]
Data matches between two tables SQL [closed]
问:
我被困在一个小问题上,我需要你的帮助:)
我有一个“客户”表 包含以下列:姓氏、名字、Id_gender、
还有一个“性别”表 使用列:Id_gender、姓名、性别
我正在尝试进行查询,根据Id_gender值将正确的性别名称插入到“客户”表的“姓名性别”列中。
我这样做了,但它不起作用......你能给我一个线索或帮助我写这个请求吗?
insert into export_clients (Genre)
SELECT psmk_gender_lang.name
FROM export_clients
INNER JOIN psmk_gender_lang
ON export_clients.id_gender = psmk_gender_lang.id_gender;
我想在第一个表上添加性别
答:
0赞
Ali Hemmati
11/17/2023
#1
查询存在一些问题。看起来它正在向export_clients表添加新行,而不是更改已存在的行中的性别名称。要解决此问题,应使用 UPDATE 语句和 JOIN。以下是您如何以不同的方式做到这一点:
更新后的查询更改了export_clients表中的“流派”列。它使用psmk_gender_lang表中的性别名称填充此列,并按id_gender匹配它们。
UPDATE export_clients
SET Genre = psmk_gender_lang.name
FROM psmk_gender_lang
WHERE export_clients.id_gender = psmk_gender_lang.id_gender;
评论
0赞
beforcom
11/17/2023
嗨,我添加两张图片来查看我问题的表格。我测试了 @Ali Hemmati 的代码,但出现以下错误:where 子句中的未知字段“psmk_gender_lang.id_gender”
0赞
beforcom
11/17/2023
选择部分给了我正确的结果。但是我不能做的是将它们插入到右行的表格中。
0赞
Ali Hemmati
11/17/2023
您能否编辑问题并提供有关它的更多信息,以帮助您?
0赞
Ali Hemmati
11/18/2023
您@beforcom可以编辑问题并提供有关它的更多信息吗?
评论