Вы не присоединились к ContentToIndividual в своем основном операторе выбора.Вы должны добавить его или не ссылаться на него.
РЕДАКТИРОВАТЬ: просто чтобы добавить, вам на самом деле не нужно добавлять SubjectMaster
или ContentToIndividual
объединений в основной выбор, так как вы не '• выбирая любые столбцы из любой таблицы - помните, что подзапрос отделен от основного запроса;вы используете его только для получения списка идентификаторов файлов.Также может быть возможно оптимизировать и остальную часть утверждения.
Select FileUpload.FileName AS FINAME, FileUpload.FilePath,MemberPersonalInformation.FirstName As SharedBy from FileUpload
INNER JOIN
ContentManagement ON ContentManagement.FileId=FileUpload.FileId
INNER JOIN
MemberPersonalInformation ON MemberPersonalInformation.MemberId=ContentManagement.CreatedBy
where
FileUpload.FileId in
(Select FileId from ContentManagement where ContentId in
(Select ContentId from ContentToIndividual where ShowToMemberId=12)
AND ContentManagement.ContentTypeId=1 and ContentManagement.SessionId=4)
РЕДАКТИРОВАТЬ 2: Просто для забавы, я думаю, это может немного упростить вещи, поскольку избавится от подзапросов, так что это должно бытьбыстрее ...
SELECT FileUpload.FileName AS FINAME, FileUpload.FilePath,MemberPersonalInformation.FirstName As SharedBy
FROM FileUpload
INNER JOIN ContentManagement ON ContentManagement.FileId=FileUpload.FileId
AND ContentManagement.ContentTypeId=1
AND ContentManagement.SessionId=4
INNER JOIN ContentToIndividual ON ContentToIndividual.ContentId = ContentManagement.ContentId -- Iguessed at this join
AND ContentToIndividual.ShowToMemberId=12
INNER JOIN MemberPersonalInformation ON MemberPersonalInformation.MemberId = ContentManagement.CreatedBy