@BaJar

Как оптимизировать?

помогите оптимизировать пожалуйста, запрос работает, но жрёт много ресурсов.

select DocumentNodeValue CauseZatrimka2, patientref, CourseID, DocumentCreationDate from 
(
select max(DocumentNodeID) CauseVipiska
			,patientref, courseID, DocumentCreationDate from DocumentNode join Document on DocumentID = DocumentRef join Course on CourseID = CourseRef
			where DocumentNodeStaticGUIDRef = 'cb8e5dcd-4932-4fb1-a2c3-5a357a3853ac' 
			and
			 DocumentNodeID not in ( select max(DocumentNodeID) from DocumentNode 
			where DocumentNodeStaticGUIDRef = 'cb8e5dcd-4932-4fb1-a2c3-5a357a3853ac' 
			group by DocumentRef)
			group by DocumentRef, patientref, courseID, DocumentCreationDate
			having DocumentCreationDate in (select max(DocumentCreationDate) CauseVipiska
			from DocumentNode join Document on DocumentID = DocumentRef join Course on CourseID = CourseRef
			where DocumentNodeStaticGUIDRef = 'cb8e5dcd-4932-4fb1-a2c3-5a357a3853ac' 
			and
			 DocumentNodeID not in ( select max(DocumentNodeID) from DocumentNode 
			where DocumentNodeStaticGUIDRef = 'cb8e5dcd-4932-4fb1-a2c3-5a357a3853ac' 
			group by DocumentRef)
			group by courseID
			 )


суть запроса в том, что нужно выбрать предпоследний документ по дате создания
  • Вопрос задан
  • 106 просмотров
Решения вопроса 1
tsklab
@tsklab Куратор тега SQL Server
Здесь отвечаю на вопросы.
предпоследний документ по дате создания … order by запрещено
Это максимальная дата меньше максимальной:
SELECT [Name], MAX(StartDate)
  FROM  [Period]
  WHERE (StartDate < (SELECT MAX(StartDate) FROM [Period] AS MaxDate 
                        WHERE (MaxDate.[Name] = [Period].[Name])))
  GROUP BY [Name]
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А почему не использовать
ORDER BY `DocumentCreationDate` DESC
LIMIT 1,1
?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 13:31
10000 руб./за проект
19 апр. 2024, в 13:12
35000 руб./за проект
19 апр. 2024, в 13:06
6000 руб./за проект