在以下示例 SQL 中
select * from (
select col
from myTable mt
inner join anotherMyTable amt on mt.id = amt.id
) as t
where
exists (select amt.colX from anotherMyTable amt where amt.id = 42)
“amt”别名在两个地方定义。使用与第一个名称相同的名称声明第二个表别名是否正确,或者我应该使用另一个名称(amt2)?
在此示例中,我假设两个别名位于不同的范围内,因此可以使用相同的名称。我使用 Informix DBMS。
ps 这是一个示例 SQL,问题仅与表别名范围有关。