表的多个别名

时间:2010-07-16 10:34:03

标签: sql sql-server

我们可以为一个表创建多个别名吗?

2 个答案:

答案 0 :(得分:11)

是。您需要为self join,执行此操作,例如,如果您有一个存储层次结构的表:

create table Foo (
    FooID int
   ,ParentFooID int
   ,[columns]
)

您可以通过以下查询进行联接以获取满足特定条件的父母的子女:

Select b.*
  from Foo a
  join Foo b
    on a.FooID = b.ParentFooID
   and [some condition filtering a]

答案 1 :(得分:3)

不,不在同一张桌子上,但您可以选择两次相同的表格,并为每个表格提供不同的别名。

SELECT alias1.*, alias2.*
FROM mytable alias1, mytable alias2

这将允许您在单个查询中将相同的表用于不同的目的。