Как изменить приведенный ниже запрос без объединения ?
Я хочу избавиться от Союза, но все равно нуждаюсь в том же наборе результатов.
Я новичок в sql, пожалуйста, помогите.
[EIDT]дублированный контент был удален - Maciej Los [/EDIT]
Что я уже пробовал:
Запрос::
select con.FirstName +' ' +con.LastName as ConsultantName,PositionName,MAX(tm.TsId) as TsId, (pm.PositionId), tm.FromDate,tm.ToDate from TimesheetMasters tm left join PositionMasters pm on tm.PositionId=pm.PositionId left join Consultants con on con.ConsultantId=pm.ConsultantId where tm.SubmissionStatus=0 --and tm.TsId in ( select MAX( TsId) from TimesheetMasters group by PositionId) and convert(date, tm.ToDate) between convert(date, DATEADD(day,-30,GETDATE())) and CONVERT(date, GETDATE()) and pm.CompanyKeyId=@CompanyKeyId group by con.FirstName +' ' +con.LastName,PositionName,tm.TsId,pm.PositionId, tm.FromDate,tm.ToDate --order by TsId desc union -- Position created but Timesheet is not submitted till now select con.FirstName +' ' +con.LastName as ConsultantName,PositionName,null as TsId, pm.PositionId,pm.StartDate, pm.EndDate from PositionMasters pm left join Consultants con on con.ConsultantId=pm.ConsultantId where pm.PositionId not in (select PositionId from TimesheetMasters) and pm.CompanyKeyId=@CompanyKeyId and convert (date,pm.StartDate) between convert(date, DATEADD(day,-30,GETDATE())) and CONVERT(date, GETDATE())
Suvendu Shekhar Giri
В чем проблема, если вы получаете правильный результат?
Это медленнее, чем ожидалось?