我有两个表,并基于id对它们进行了内连接。现在我需要命名这个连接表。我怎么做?我想命名这个表的原因是因为我必须将这个结果表与其他一些表连接起来。
答案 0 :(得分:0)
您创建了通常称为 relvar 的内容,而不是另一个表。您可以通过将它的SELECT定义放在子查询中来加入它:
SELECT
FROM (
-- original join SQL
) t
INNER JOIN table2 on ...
答案 1 :(得分:0)
select * from (
select * from TableA a join TableB b on a.id = b.a_id
) as p;
根据评论,似乎view
可能正是您所寻找的:
create view MyView
as
select * from TableA a join TableB b on a.id = b.a_id;
它不会列在表格中(而是在视图中),但它的行为就像你的sql编辑器中的表格一样。
答案 2 :(得分:0)
您可以使用子查询为join
的结果创建别名。例如:
select *
from (
select *
from tbl1
join tbl2
on tbl1.id = tbl2.id
) as JoinAlias
join tbl3
on JoinAlias.id = tbl3.id
你经常可以在没有这样的alias
的情况下做。例如,考虑第三个连接:
select *
from tbl1
join tbl2
on tbl1.id = tbl2.id
join tbl3
on tbl3.col1 = tbl1.col1
and tbl3.col2 = tbl2.col2
如您所见,第三个join
条件可以引用所有早期表格中的列。