gpt4 book ai didi

mysql - 从其他表填充新表

转载 作者:行者123 更新时间:2023-11-29 12:22:36 24 4
gpt4 key购买 nike

我有 3 张 table :

  1. 问题
  2. 标签
  3. questions_tags -> 数据透视表(多对多关系)

我需要创建名为“tags_languages”的新表,并根据“问题”和“标签”表中的问题语言(多对多关系)填充标签语言

表结构:

“问题”表

id     text     language_id
1 What.. 1
2 How... 1
3 Is... 2
4 Is... 2
5 Where.. 3

“标签”表

id     text
1 London
2 England
3 ball
4 love
5 yellow

“questions_tags”表

id     question_id     tag_id
1 1 1
2 1 2
3 2 1
4 2 2
5 2 3
6 1 3
7 3 2
8 2 4
9 1 4
10 4 3

所需表格:

"tags_languages": (tag_id & language_id) -> 复合主键

tag_id     language_id
1 1
2 1
2 2
3 1
3 2
4 1

谢谢

最佳答案

这会生成您提到的输出:

SELECT  qt.tag_id, q.language_id
FROM questions q
JOIN questions_tags qt ON qt.question_id = q.id;

将其放入表中是“错误的”,因为您始终可以即时重建它。 (数据库中的冗余数据是禁忌。)

将其粘贴在 SELECT 前面将创建表:

CREATE TABLE tags_languages (
PRIMARY KEY(tag_id, language_id) )

“多对多”和“枢轴”不是同义词。

也许您真正的目标不仅仅是“我需要创建新表”。您愿意讨论一下吗?

关于mysql - 从其他表填充新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28796009/

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