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);

谢谢你宝贵的回复。谢谢你宝贵的回复。