Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 максимальное значение  [new]
Nakeshi
Member

Откуда:
Сообщений: 81
есть таблица с след набором данных

create table dbo.temp2 (
val varchar(4),
val_id int
)

insert dbo.temp2 (val, val_id) values ('val1', 1)
insert dbo.temp2 (val, val_id) values ('val2', 1)
insert dbo.temp2 (val, val_id) values ('val3', 2)

Без использования подзапросов возможно ли выбрать из dbo.temp2 значение val для которого val_id - максимальное ?
В примере должно быть возвращено 'val3'.

единственное решение которое приходит на ум

select val
from dbo.temp2
where val_id in (select MAX(val_id) from dbo.temp2)

Но данное решение не удобно в том плане, что в задаче вместо dbo.temp2 - очень большой запрос - который не записать не во временные таблицы, ни куда.
17 янв 13, 11:37    [13783464]     Ответить | Цитировать Сообщить модератору
 Re: максимальное значение  [new]
iap
Member

Откуда: Москва
Сообщений: 47045
select top(1) with ties *
from dbo.temp2
order by val_id desc;
with ties - на случай, когда есть несколько равных максимумов
17 янв 13, 11:58    [13783686]     Ответить | Цитировать Сообщить модератору
 Re: максимальное значение  [new]
Nakeshi
Member

Откуда:
Сообщений: 81
То что нужно - спасибо за решение! Возьму на вооружение
17 янв 13, 12:06    [13783774]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить