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

Откуда:
Сообщений: 186
Добрый день!
есть таблица примерно в таком виде:
ID Org Dep Name Amount Date
12 test Creat Scccc 10 2013-09-22 11:50:30.600
13 test Creat Ofgfgf 30 2013-09-23 11:51:24.600
13 test Creat Ofgfgf 52 2013-09-23 11:52:34.600
.....
120 Test1 Osc Scccc 20 2013-09-25 14:10:30.600
121 Test1 Text Ofgfgf 63 2013-09-25 15:32:34.600
как сделать чтобы получит такой запрос, т.е. показать сумму последнего строка в отдельной столбца
ID Org Dep Name Amount Amount1
1 test Creat SSS 92 52
2 Test1 Osc Scccc 83 63
25 сен 13, 13:20    [14882051]     Ответить | Цитировать Сообщить модератору
 Re: Простой запрос  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Joris
1 test Creat SSS 92 52

Что такое SSS? В исходных данных нет такого.
25 сен 13, 13:25    [14882090]     Ответить | Цитировать Сообщить модератору
 Re: Простой запрос  [new]
Joris
Member

Откуда:
Сообщений: 186
да действительно я ошибся, вот правильный вариант:
1 test Creat Scccc 92 52
2 Test1 Osc Scccc 83 63
25 сен 13, 13:32    [14882145]     Ответить | Цитировать Сообщить модератору
 Re: Простой запрос  [new]
Мистер Хенки
Member

Откуда: канализация
Сообщений: 6615
вам сюда
25 сен 13, 13:34    [14882159]     Ответить | Цитировать Сообщить модератору
 Re: Простой запрос  [new]
Сергей Викт.
Member

Откуда: Москва
Сообщений: 888
Joris
да действительно я ошибся, вот правильный вариант:
1 test Creat Scccc 92 52
2 Test1 Osc Scccc 83 63

Какая версия сервера?
25 сен 13, 13:34    [14882164]     Ответить | Цитировать Сообщить модератору
 Re: Простой запрос  [new]
Joris
Member

Откуда:
Сообщений: 186
SQL Express 2008
25 сен 13, 13:36    [14882181]     Ответить | Цитировать Сообщить модератору
 Re: Простой запрос  [new]
Мистер Хенки
Member

Откуда: канализация
Сообщений: 6615
Мистер Хенки
вам сюда

cross apply(select top (1) name from tab where tab.Org = otab.org order by date asc ) frow(name)

это имя из первой строки в группе

cross apply (select top(1) amount from tab where tab.Org = otab.org order by date desc)lrow(amount) 

Это сумма из последней строки в группе

Ну сумму по группе это через агрегаты, как я уже и писал.
25 сен 13, 13:44    [14882248]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить