Mysql 通过交叉连接两个表将值插入第三个表
我想通过交叉连接两个表Mysql 通过交叉连接两个表将值插入第三个表,mysql,sql,database,Mysql,Sql,Database,我想通过交叉连接两个表表a和表B,将值插入表C Table_A contains two attributes ID and item. Table_B contains two attributes ID and color. Table_C contains four attributes ID,item,color,quantity. 所有id都具有自动递增功能 假设每个项目都可以有所有的颜色,我需要创建一个关于它的关系。 我应该如何为此编写查询?如何引用交叉连接项目和颜色的关系。 我的
表a和表B,将值插入表C
Table_A contains two attributes ID and item.
Table_B contains two attributes ID and color.
Table_C contains four attributes ID,item,color,quantity.
所有id
都具有自动递增功能
假设每个项目都可以有所有的颜色
,我需要创建一个关于它的关系。
我应该如何为此编写查询?如何引用交叉连接项目
和颜色
的关系。
我的解决方案是创建一个连接这两个表的中间第三个表,然后使用该表将值插入表\u C
。但我很确定有更好的优化解决方案
提前谢谢。不需要临时表。。。你可以做:
insert into ...
select ... from ...
写下“填充”您提到的临时表所需的查询,并将行直接插入到最终的表中。无需临时表。。。你可以做:
insert into ...
select ... from ...
写下“填充”您提到的临时表所需的查询,并将行直接插入到最终的表中。以下是对我有效的查询
INSERT INTO Table_C (SELECT null, Table_A.item, Table_B.color, null FROM
Table_A CROSS JOIN Table_B);
这是一个对我有用的问题
INSERT INTO Table_C (SELECT null, Table_A.item, Table_B.color, null FROM
Table_A CROSS JOIN Table_B);
谢谢你宝贵的回复。谢谢你宝贵的回复。