Можно ли сделать CROSS JOIN между 2 таблицами, затем LEFT JOIN в 3-й таблице, а затем, возможно, больше левых соединений?Я использую SQL Server 2000 / 2005.
Я выполняю следующий запрос, который довольно прост IMO, но я получаю ошибку.
select P.PeriodID,
P.PeriodQuarter,
P.PeriodYear,
M.Name,
M.AuditTypeId,
A.AuditId
from Period P, Member M
LEFT JOIN Audits A
ON P.PeriodId = A.PeriodId
WHERE
P.PeriodID > 29 AND P.PeriodID < 38
AND M.AuditTypeId in (1,2,3,4)
order by M.Name
Я получаю следующую ошибку:
Сообщение 4104, уровень 16, состояние 1, строка 1 Не удалось связать идентификатор из нескольких частей «P.PeriodId».
Если удалить ЛЕВУЮПРИСОЕДИНЯЙТЕСЬ, запрос работает.Тем не менее, мне нужно LEFT JOIN, так как есть еще информация, которую мне нужно извлечь из других таблиц.
Что я делаю не так?Есть ли лучший способ для этого?