Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Работа Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
 Re: Sql 2 Таблицы  [new]
Oblom
Member

Откуда: Moscow Square
Сообщений: 537
Dmitry V. Liseev
Как-то не люблю я такие подзапросы. Два раза таблицу сканировать. Я бы пронумеровал в порядке падения зарплат с помощью ROW_NUMBER(), а потом выбрал одного с номером 1. Правда, если будут несколько с одинаковой, то повезёт кому-то одному.

Там ещё есть RANK, DENSE_RANK, TOP 1 WITH TIES и куча прочих радостей )))
13 сен 17, 16:17    [20793230]     Ответить | Цитировать Сообщить модератору
 Re: Sql 2 Таблицы  [new]
nJe
Member

Откуда:
Сообщений: 3
Громоздко немного, но особо работает вроде)

select * from (
	select * from a 
	union all 
	select * from b
) as t where t.salary = (select max(q.salary) from (select * from a union all select * from b) as q)
14 сен 17, 21:16    [20797254]     Ответить | Цитировать Сообщить модератору
 Re: Sql 2 Таблицы  [new]
nJe
Member

Откуда:
Сообщений: 3
Так лучше выглядит

with cte as (select * from a 
	union all 
	select * from b)

select * from cte where cte.salary = 
	(select max(cte.salary) from cte)
14 сен 17, 21:23    [20797269]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
Все форумы / Работа Ответить