1- -- 2 NO COLUMN SELECTS
1+ -- 2
22SELECT Н_ЛЮДИ.ИД, Н_ВЕДОМОСТИ.ЧЛВК_ИД, Н_СЕССИЯ.УЧГОД
3- FROM
4- (SELECT ИД FROM Н_ЛЮДИ WHERE ИД = 100012 ) Н_ЛЮДИ LEFT JOIN Н_ВЕДОМОСТИ
5- ON Н_ЛЮДИ.ИД = Н_ВЕДОМОСТИ.ЧЛВК_ИД
6- LEFT JOIN Н_СЕССИЯ
7- ON Н_ВЕДОМОСТИ.ЧЛВК_ИД = Н_СЕССИЯ.ЧЛВК_ИД
3+ FROM Н_ЛЮДИ LEFT JOIN Н_ВЕДОМОСТИ
4+ ON Н_ЛЮДИ.ИД = Н_ВЕДОМОСТИ.ЧЛВК_ИД
5+ LEFT JOIN Н_СЕССИЯ
6+ ON Н_ВЕДОМОСТИ.ЧЛВК_ИД = Н_СЕССИЯ.ЧЛВК_ИД
87 WHERE
8+ Н_ЛЮДИ.ИД = 100012 AND
99 Н_СЕССИЯ.ДАТА < ' 2004-01-17' ;
1010
11- -- 3 NO COLUMN SELECTS
11+ -- 3
1212SELECT COUNT (* )
13- FROM
14- ( SELECT Н_ЛЮДИ.ИД FROM Н_ЛЮДИ WHERE Н_ЛЮДИ.ОТЧЕСТВО = ' . ' ) Н_ЛЮДИ
15- LEFT JOIN Н_ВЕДОМОСТИ
16- ON Н_ЛЮДИ .ИД = Н_ВЕДОМОСТИ.ЧЛВК_ИД
17- RIGHT JOIN Н_СОДЕРЖАНИЯ_ЭЛЕМЕНТОВ_СТРОК
18- ON Н_СОДЕРЖАНИЯ_ЭЛЕМЕНТОВ_СТРОК .ИД = Н_ВЕДОМОСТИ.СЭС_ИД
19- LEFT JOIN Н_ЭЛЕМЕНТЫ_СТРОК
20- ON Н_ЭЛЕМЕНТЫ_СТРОК.ИД = Н_СОДЕРЖАНИЯ_ЭЛЕМЕНТОВ_СТРОК.ЭСТ_ИД
21- INNER JOIN ( SELECT Н_ОТДЕЛЫ.ИД FROM Н_ОТДЕЛЫ WHERE Н_ОТДЕЛЫ.КОРОТКОЕ_ИМЯ = ' КТиУ ' ) Н_ОТДЕЛЫ
22- ON Н_ЭЛЕМЕНТЫ_СТРОК.ОТД_ИД = Н_ОТДЕЛЫ.ИД ;
13+ FROM Н_ЛЮДИ LEFT JOIN Н_ВЕДОМОСТИ
14+ ON Н_ЛЮДИ.ИД = Н_ВЕДОМОСТИ.ЧЛВК_ИД
15+ RIGHT JOIN Н_СОДЕРЖАНИЯ_ЭЛЕМЕНТОВ_СТРОК
16+ ON Н_СОДЕРЖАНИЯ_ЭЛЕМЕНТОВ_СТРОК .ИД = Н_ВЕДОМОСТИ.СЭС_ИД
17+ LEFT JOIN Н_ЭЛЕМЕНТЫ_СТРОК
18+ ON Н_ЭЛЕМЕНТЫ_СТРОК .ИД = Н_СОДЕРЖАНИЯ_ЭЛЕМЕНТОВ_СТРОК.ЭСТ_ИД
19+ INNER JOIN Н_ОТДЕЛЫ
20+ ON Н_ЭЛЕМЕНТЫ_СТРОК.ОТД_ИД = Н_ОТДЕЛЫ.ИД
21+ WHERE Н_ЛЮДИ.ОТЧЕСТВО = ' . ' AND
22+ Н_ОТДЕЛЫ.КОРОТКОЕ_ИМЯ = ' КТиУ ' ;
2323
24- -- 4 NO COLUMN SELECTS
24+ -- 4
2525SELECT Н_ПЛАНЫ.ПЛАН_ИД
2626 FROM Н_ГРУППЫ_ПЛАНОВ INNER JOIN Н_ПЛАНЫ
2727 ON Н_ГРУППЫ_ПЛАНОВ.ПЛАН_ИД = Н_ПЛАНЫ.ИД
28- INNER JOIN ( SELECT Н_ОТДЕЛЫ.ИД FROM Н_ОТДЕЛЫ WHERE Н_ОТДЕЛЫ.КОРОТКОЕ_ИМЯ = ' КТиУ ' ) Н_ОТДЕЛЫ
28+ INNER JOIN Н_ОТДЕЛЫ
2929 ON Н_ПЛАНЫ.ОТД_ИД = Н_ОТДЕЛЫ.ИД
30+ WHERE Н_ОТДЕЛЫ.КОРОТКОЕ_ИМЯ = ' КТиУ'
3031 GROUP BY Н_ПЛАНЫ.ПЛАН_ИД
31- HAVING COUNT (* ) > 1
32- ORDER BY Н_ПЛАНЫ.ПЛАН_ИД;
32+ HAVING COUNT (* ) > 1 ;
33+
34+ -- 5
35+ SELECT ЧЛВК_ИД, ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО, СРЕДНИЙ_БАЛЛ
36+ FROM Н_ЛЮДИ INNER JOIN
37+ (
38+ SELECT Н_УЧЕНИКИ.ЧЛВК_ИД, AVG (CAST(ОЦЕНКА AS REAL )) AS СРЕДНИЙ_БАЛЛ
39+ FROM Н_ВЕДОМОСТИ RIGHT JOIN Н_УЧЕНИКИ
40+ ON Н_УЧЕНИКИ.ЧЛВК_ИД = Н_ВЕДОМОСТИ.ЧЛВК_ИД
41+ WHERE ОЦЕНКА SIMILAR TO ' \d ' AND
42+ ГРУППА = ' 4100'
43+ GROUP BY Н_УЧЕНИКИ.ЧЛВК_ИД
44+ ) ОЦ
45+ ON Н_ЛЮДИ.ИД = ОЦ.ЧЛВК_ИД
46+ WHERE СРЕДНИЙ_БАЛЛ >= (
47+ SELECT MAX (СРЕДНИЙ_БАЛЛ)
48+ FROM
49+ (
50+ SELECT AVG (CAST(ОЦЕНКА AS REAL )) AS СРЕДНИЙ_БАЛЛ
51+ FROM Н_ВЕДОМОСТИ RIGHT JOIN Н_УЧЕНИКИ
52+ ON Н_УЧЕНИКИ.ЧЛВК_ИД = Н_ВЕДОМОСТИ.ЧЛВК_ИД
53+ WHERE ОЦЕНКА SIMILAR TO ' \d ' AND
54+ ГРУППА = ' 1101'
55+ GROUP BY Н_УЧЕНИКИ.ЧЛВК_ИД
56+ )
57+ );
58+
59+
60+ -- 6
61+ SELECT
62+ Н_УЧЕНИКИ.ГРУППА,
63+ Н_УЧЕНИКИ.ИД,
64+ Н_ЛЮДИ.ФАМИЛИЯ,
65+ Н_ЛЮДИ.ИМЯ,
66+ Н_ЛЮДИ.ОТЧЕСТВО,
67+ Н_УЧЕНИКИ.В_СВЯЗИ_С AS НОМЕР_ПРИКАЗА,
68+ Н_УЧЕНИКИ.СОСТОЯНИЕ AS СОСТОЯНИЕ_ПРИКАЗА
69+
70+ FROM Н_ЛЮДИ RIGHT JOIN Н_УЧЕНИКИ
71+ ON Н_УЧЕНИКИ.ЧЛВК_ИД = Н_ЛЮДИ.ИД
72+ JOIN Н_ПЛАНЫ
73+ ON Н_ПЛАНЫ.ИД = Н_УЧЕНИКИ.ПЛАН_ИД
74+ JOIN Н_НАПРАВЛЕНИЯ_СПЕЦИАЛ
75+ ON Н_НАПРАВЛЕНИЯ_СПЕЦИАЛ.ИД = Н_ПЛАНЫ.НАПС_ИД
76+ JOIN Н_ФОРМЫ_ОБУЧЕНИЯ
77+ ON Н_ФОРМЫ_ОБУЧЕНИЯ.ИД = Н_ПЛАНЫ.ФО_ИД
78+ JOIN Н_НАПР_СПЕЦ
79+ ON Н_НАПР_СПЕЦ.ИД = Н_НАПРАВЛЕНИЯ_СПЕЦИАЛ.НС_ИД
80+ WHERE
81+ Н_УЧЕНИКИ.НАЧАЛО < ' 2012-09-01' AND
82+ Н_ПЛАНЫ.КУРС = 1 AND
83+ (Н_ФОРМЫ_ОБУЧЕНИЯ.НАИМЕНОВАНИЕ = ' Очная' OR Н_ФОРМЫ_ОБУЧЕНИЯ.НАИМЕНОВАНИЕ = ' Заочная' ) AND
84+ Н_НАПР_СПЕЦ.КОД_НАПРСПЕЦ = ' 230101' ;
85+
86+ -- 7
87+ SELECT ИМЯ, ДАТА_РОЖДЕНИЯ FROM
88+ Н_ЛЮДИ
89+ WHERE NOT EXISTS
90+ (
91+ SELECT 1
92+ FROM Н_ЛЮДИ Н_ЛЮДИ_2
93+ WHERE Н_ЛЮДИ.ИМЯ = Н_ЛЮДИ_2.ИМЯ AND
94+ Н_ЛЮДИ.ДАТА_РОЖДЕНИЯ = Н_ЛЮДИ_2.ДАТА_РОЖДЕНИЯ AND
95+ Н_ЛЮДИ.ИД != Н_ЛЮДИ_2.ИД
96+ )
97+ ORDER BY ИМЯ, ДАТА_РОЖДЕНИЯ;
0 commit comments