Есть ли способ, чтобы удалить лоне присоединиться к лучшей производительности ? Я хочу получить поле cardno после среднего соединения ,
SELECT Top 1 details.PersonnelBaseID FROM dbo.tkp_PersonnelDetails INNER JOIN ( SELECT personnelDetails.EffectiveDate,personnelDetails.PersonnelBaseID,CardNo FROM dbo.tkp_PersonnelDetails AS personnelDetails INNER JOIN ( SELECT Max(EffectiveDate) AS EffectiveDate,details.PersonnelBaseID FROM dbo.tkp_PersonnelDetails AS details INNER JOIN prs_Personnel personnel ON personnel.ID = details.PersonnelBaseID AND Personnel.Active = 1 AND Personnel.Deleted = 0 AND details.Deleted = 0 AND details.EffectiveDate <= @Time GROUP BY PersonnelBaseID )result ON result.PersonnelBaseID = personnelDetails.PersonnelBaseId AND result.EffectiveDate = personnelDetails.EffectiveDate )details ON tkp_PersonnelDetails.PersonnelBaseID = details.PersonnelBaseId AND tkp_PersonnelDetails.cardNo = @CardNo ORDER BY tkp_PersonnelDetails.Effectivedate DESC
Что я уже пробовал:
есть ли способ, чтобы удалить лоне присоединиться к лучшей производительности ? я хочу получить поле CardNo после присоединения