На одном из собеседований на должность backend разработчика в интернете нашла следующие вопросы:
1. Вывести список сотрудников, получающих максимальную заработную плату в своем отделе
2. Составить SQL-запрос, вычисляющий произведение вещественных значений, содержащихся в некотором столбце таблицы
1. Найти всех сотрудников, получающих максимальную заработную плату в своём отделе.
Вот возможный вариант решения этого вопроса:
select a.*
from employee a
where a.salary = ( select max(salary) from employee b
where b.department_id = a.department_id )
2. Составить SQL-запрос, вычисляющий произведение вещественных значений, содержащихся в некотором столбце таблицы.
С этим посложнее, конечно, но вот тоже примерный вариант, который должен выполнять условия задачи:
select
exp(sum(ln(decode(sign(salary),0,1,-1,-salary,salary))))
*decode(mod(sum(decode(sign(salary),-1,1,0)),2),1,-1,1)
*sign(min(abs(salary)))
from employee
Рекоммендую вам пройти курс SQL Essential, если вы хотите поднатаскать себя в SQL и решать подобные задачи. На курсе представлены как основы SQL/T-SQL, так и более продвинутые вещи, которые также могут спрашивать на собеседованиях, так что на досуге советую вам таки просмотреть этот курс.