Php 在SQL中组合不同的表

Php 在SQL中组合不同的表,php,mysql,sql,Php,Mysql,Sql,我有三张桌子,我想把它们组合成一张空桌子 Table A contains: a_id | name 1 | john 2 | mic 3 | rog 及 及 我有一个空表D,上面三个表的id都是: 表D列为: a_id | b_id | c_id 如何在表D中插入所有id?和 当我运行查询时 Select*from table_D 它应该显示表(a、b、c)中的所有id。您的问题相当模糊,因为您没有指定d的外观。让我假设你是所有ids的笛卡尔积。这似乎是一个合理的假设。然后

我有三张桌子,我想把它们组合成一张空桌子

Table A contains:
a_id | name
1  |  john
2  |  mic
3  |  rog

我有一个空表D,上面三个表的id都是: 表D列为:

a_id  | b_id | c_id
如何在表D中插入所有id?和 当我运行查询时

Select*from table_D

它应该显示表(a、b、c)中的所有id。

您的问题相当模糊,因为您没有指定
d
的外观。让我假设你是所有
id
s的笛卡尔积。这似乎是一个合理的假设。然后:

insert into d (a_id, b_id, c_id)
    select a.a_id, b.b_id, c.c_id
    from a cross join b cross join c;

是一个测试人员在演示它。

以下是您的要求:

INSERT d
SELECT a.id, b.id, c.id
FROM a CROSS JOIN b CROSS JOIN c

虽然我怀疑这是你想要的

你过去的问题都解决了吗?没有人被标记为这样。我想你不知道怎么做,对吧?@FunkFortyNiner即使它对我不起作用,我也能标记为已解决吗?不。我注意到有一个你说它起作用了,所以你可以标记:-)@FunkFortyNiner好的,谢谢,它执行了,但没有像我预期的那样工作。@FunkFortyNiner你能帮我查询一下吗?谢谢,这个命令执行了,但是D表还是空的,你能告诉我为什么吗?@iMatt。如果组合的任何表为空,则会发生这种情况。所有表都有数据。某些行数可能会有所不同。表d为空,因为我想在其中插入所有三个表的id。这就是我编写查询的方式:iscptt@iMatt。当我运行它时,它工作。我添加了一个Rextester示例。
insert into d (a_id, b_id, c_id)
    select a.a_id, b.b_id, c.c_id
    from a cross join b cross join c;
INSERT d
SELECT a.id, b.id, c.id
FROM a CROSS JOIN b CROSS JOIN c