Posted by Serge Rielau on 01/24/08 17:24
Serge Rielau wrote:
>> S. Rielau : the problem is the "WHERE B1.x=F.x".
>> If I write SELECT X FROM F, (SELECT ... FROM B1 WHERE B1.x=F.x) AS F1
>> SQL Server doesn't recognize F.x.
> That's not what I wrote.
> You can put the WHERE on the outer SELECT.
Let me qualify:
Assuming the WHERE clause can be pulled up.
E.g. if you repeated it in both branches of the UNION ALL (which I
forgot about)
If you can't pull the WHERE up the correlated join (APPLY/LATERAL) is
your only efficient way to wrote it.
Cheers
Serge
--
Serge Rielau
DB2 Solutions Development
IBM Toronto Lab
[Back to original message]
|