2.17.    Использование UNION с ORDER BY

Предложение ORDER BY применяется для упорядочения вы­ходных данных объединения запросов так же, как и для отдель­ных запросов. Последний пример, при необходимости упорядо-чения выходных данных запроса по фамилиям студентов и датам экзаменов, может выглядеть следующим образом:

SELECT 'КЖХЦ', A.STIJDENT_ID, SURNAME, E.MARK, E.EXAM_DATE FROM   STUDENT A,

(SELECT B.STUDENT_ID, B.MARK, B.EXAM_DATE FROM EXAM_MAR К S B,

(SELECT MAX (MARK)    AS MAX_MARK, C.EXAM_DATE FROM EXAM_MARKS С GROUP BY C.EXAM_DATE| D WHERE В.EXAM_DATE = D.EXAM_DATE AND   В.MARK=MAX_MARK| E WHERE A.STUDENT_ID=E.STUDENT_ID UNION ALL

SELECT   'МИНЭЦ', A.STIJDENT_ID, SURNAME, E.MARK, E.EXAM_DATE FROM   STUDENT A,

(SELECT В.STUDENT_ID, B.MARK, В.EXAM_DATE FROM EXAM_MAR К S B,

(SELECT MIN(MARK)   AS MIN_MARK, С. EXAM_DATE FROM EXAM_MAR К S С GROUP BY С.EXAM_DATE) D WHERE В.EXAM_DATE=D.EXAM_DATE AND   В.MARK=MIN_MARK) E WHERE   A.STUDENT_ID=E.STUDENT—ID ORDER BY SURNAME,E.EXAM_DATE;