|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.07.2010, 18:29 | #1 | ||
Форумчанин
Регистрация: 14.01.2009
Сообщений: 312
|
суммирование определенных строк
Добрый день
Допустим есть запрос: SELECT id, formula FROM table мне необходимо: Если строк в выборке <= 2 то выводим просто значение поля formula первой строки, если > 2 то необходимо вернуть сумму поля формула начиная со второй строки. например id formula 1 400 1 300 В данном случае необходимо получить 1 400 id formula 1 400 1 200 1 190 В данном случае необходимо получить 1 390 Formula первой строки всегда будет больше остальных Для первой строки можно использовать что то вроде Цитата:
Вот думаю такой вариант пойдет: Цитата:
Никому не поставить нас на колени! Мы лежали и будем лежать!
Последний раз редактировалось Rekky; 29.07.2010 в 18:54. |
||
29.07.2010, 20:39 | #2 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
если смотреть на задачу в первичной постановке, то возникает вопрос - на каком основании понимается первая строка? признака сортировки нет
ну и ваше решение привязывается к данным - раз а второе - для всех айди одного типа (первый тип - строк до 3, второй тип - строк больше 2) числа будут одинаковы здесь нужно использовать партишн по айди и соответственно sum() over() и max() over() |
30.07.2010, 09:24 | #3 | ||
Форумчанин
Регистрация: 14.01.2009
Сообщений: 312
|
Цитата:
Партишн мне не нужен, мне нужно возвращение одной строки для каждого id. они могут повторятся и различатся. например: id formula 1 200 1 100 1 150 2 500 2 300 3 490 3 400 3 90 3 10 Эти данные уже отсортированы и упорядочены как надо. В результате должно получится: 1 250 2 500 3 500 А вобще, я не совсем поняла замечание Цитата:
Никому не поставить нас на колени! Мы лежали и будем лежать!
Последний раз редактировалось Rekky; 30.07.2010 в 09:29. |
||
30.07.2010, 10:59 | #4 | |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
интересно узнать признак сортировки
Цитата:
|
|
30.07.2010, 11:14 | #5 |
Форумчанин
Регистрация: 14.01.2009
Сообщений: 312
|
эти два поля выбираются из большущего запроса. там идет сортировка сначала по id, а потом по дате.Точнее в данном примере который вы процитировали...должны быть еще поля, включая дату и тп..просто я не стала указывать. первая строка это общий случай получается. на самую раннюю дату выйдет самая большая сумма. первая строка считается по особому алгоритму.
Никому не поставить нас на колени! Мы лежали и будем лежать!
Последний раз редактировалось Rekky; 30.07.2010 в 11:19. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Суммирование строк в Access | Shtirlic2009 | Microsoft Office Access | 13 | 21.09.2015 00:46 |
макрос для перемещения определенных строк вверх | MrGB | Microsoft Office Excel | 2 | 11.07.2010 20:04 |
Суммирование определенных ячеек при переносе | Pilot | Microsoft Office Excel | 5 | 17.07.2008 12:46 |
суммирование данных из чётных и нечётных строк (отдельно!) | zetrix | Microsoft Office Excel | 0 | 30.10.2006 19:49 |