gpt4 book ai didi

mysql - 合并两个 mysql 表的某些列,其中 id = fileid

转载 作者:可可西里 更新时间:2023-11-01 07:53:32 24 4
gpt4 key购买 nike

有两个表

TableA
filedata_id | user_id | filename
1 | 1 | file.txt
2 | 1 | file2.txt


TableB
a_id | date | filedataid | counter | state | cat_id | subcat_id | med_id
99 | 1242144 | 1 | 2 | v | 55 | 56 | 90
100 | 1231232 | 2 | 3 | i | 44 | 55 | 110

我想将列 cat_id、subcat_id、med_id 移动到 TableA,其中 tableA.filedata_id = TableB.filedataid

编辑:结果应该是表 A 中的架构更改,因此它看起来像下面这样,并且表 B 中还有来自这些列的数据:

TableA
filedata_id | user_id | filename | cat_id | subcat_id | med_id
1 | 1 | file.txt | 55 | 56 | 90
2 | 1 | file2.txt | 44 | 55 | 110

等等。

有没有办法轻松做到这一点?

最佳答案

<罢工>您可以为此使用 INNER JOIN:

SELECT t1.filedata_id, t1.user_id, t1.filename
,t2.cat_id, t2.subcat_id, t2.med_id
FROM TableA t1
INNER JOIN TableB t2
ON t1.filedata_id = t2.filedataid

<罢工> See this SQLFiddle

更新:

您可以像这样更改 TableA 的架构:

ALTER TABLE TableA
Add column cat_id int,
Add column subcat_id int,
Add column med_id int;

然后像这样从 TableB 更新 TableA 的新列:

UPDATE tableA t1 
JOIN tableB t2
ON t1.filedata_id = t2.filedataid
SET t1.cat_id = t2.cat_id,
t1.subcat_id = t2.subcat_id,
t1.med_ID = t2.med_ID;

See this SQLFiddle

有关更多信息,请参阅 MySQL: ALTER TABLE SyntaxMySQL: UPDATE Syntax .

关于mysql - 合并两个 mysql 表的某些列,其中 id = fileid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12380848/

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