El ejemplo de código que mostró tenía puntos suspensivos y creo que es lo que está en los puntos suspensivos lo que está causando el problema.
Tienes:
SELECT R.[ID], C.[name] AS [company], ...
FROM [requests] AS R, ...
LEFT OUTER JOIN [companies] AS C
ON R.[company_id] = S.ID
Digamos que es algo como:
SELECT R.[ID], C.[name] AS [company], X.Field
FROM [requests] AS R, [eXample] as X
LEFT OUTER JOIN [companies] AS C
ON R.[company_id] = S.ID
WHERE X.[request_id] = R.ID
En otras palabras, la combinación de la sintaxis de combinación interna anterior a ANSI 92 con la sintaxis de combinación externa ANSI 92. Al probar en SQL Server 2005, parece que el alias R para solicitudes no se ve más allá de la coma que separa a R de... en su ejemplo, y [eXample] como X en el mío. Sin embargo, lo siguiente funcionó:
SELECT R.[ID], C.[name] AS [company], X.Field
FROM [eXample] as X, [requests] AS R
-- Requests and companies on the same side of the comma
LEFT OUTER JOIN [companies] AS C
ON R.[company_id] = S.ID
WHERE X.[request_id] = R.ID
o
SELECT R.[ID], C.[name] AS [company], X.Field
FROM [requests] AS R LEFT OUTER JOIN [companies] AS C
ON R.[company_id] = S.ID, [eXample] as X
WHERE X.[request_id] = R.ID
-- Yuck, I would hate to find this. Not at all sure from reading
-- the code how it would work.
o mi favorito, porque me gusta la sintaxis de combinación ANSI 92:
SELECT R.[ID], C.[name] AS [company], X.Field
FROM [requests] AS R
INNER JOIN [eXample] as X ON X.[request_id] = R.ID
LEFT OUTER JOIN [companies] AS C ON R.[company_id] = S.ID