Використання функції DENSE_RANK(). Він повертає ранг зазначеного рядка. Ранжування у функції DENSE_RANK() — це цілі значення, починаючи з 1. У наведеному вище запиті замініть значення N на потрібний нам ранг зарплати. Наприклад, замініть N на 2, щоб отримати другу найвищу зарплату в таблиці.
Виберіть * із (Select first_name,department_id, salary, dense_rank () over (partition by department_id order by salary desc nulls last) as dense_rank from zaposlenih), де dense_rank = 3; Наведений вище запит дасть вам третє найвище значення для кожного department_id.
По убыванню гаразд по убыванню зарплата. І запустіть його. Отже, коли я зроблю це в порядку спадання, що станеться, у вас найвища зарплата, буде вашим спостереженням. Номер один.
У цьому методі ми будемо використовувати самоз’єднання, щоб об’єднати таблицю співробітників із самою собою на основі стовпця зарплати. Умова об’єднання така, що зарплата першої таблиці менша за зарплату другої таблиці. Результат – друга за величиною зарплата.
Sql-запит для отримання 2-ї найвищої оцінки з кожного предмету за…
- ВИБРАТИ max (балів) FROM Student GROUP BY sub_name WHERE.
- оцінки НЕ В (ВИБРАТИ макс.(балів) З ГРУПИ студентів ЗА sub_name);