我需要创建两个临时表,然后将它们连接到一个表中,并保留表和数据的所有列名。使用Mysql

CREATE TEMPORARY TABLE tenant_invoices
    SELECT * FROM invoices

CREATE TEMPORARY TABLE tenant_payments
    SELECT * FROM payments

如何使用MYSQL来实现这一点?
谢谢。

最佳答案

创建两个临时表后,可以使用CROSS JOIN将表连接在一起:

select ti.*, tp.*
from tenant_invoices ti
cross join tenant_payments tp

SQL Fiddle with Demo
CROSS JOIN将在没有字段加入表时工作。如果有要加入的字段,则可以使用INNER JOINLEFT JOIN
select ti.*, tp.*
from tenant_invoices ti
inner join tenant_payments tp
  on ti.account_id = tp.account_id


select ti.*, tp.*
from tenant_invoices ti
left join tenant_payments tp
  on ti.account_id = tp.account_id

SQL Fiddle with demo

关于mysql - 将两个临时表合并为一个表,但保留所有列名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13654670/

10-14 05:32