powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Помогите с запросом. Группировка
10 сообщений из 10, страница 1 из 1
Помогите с запросом. Группировка
    #32423089
Leshgan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется view с тремя полями: Дата (date_z), сумма (sum_all), интернет (inet - значения 0 или 1).
Как сделать такой запрос с группировкой по дате, чтобы в результате у меня было три поля: дата, общая сумма за день, сумма за день строк с признаком inet=0.

напишу пример на фоксе, может можно аналог сделать.

select date_z, sum(sum_all) as sum1, sum(iif(inet=1,sum_all,0)) as sum2 from view1 group by date_z, inet
что-то в таком стиле можно сделать?
Спасибо.
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32423113
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотря какой сервер у тебя. В Yaffil есть IIF, в FB1.5 - COALESCE, а в IB нефига нету :-) Говорят что в FB1.5 для поддержки IIF надо разкомментировать две строчки. Не понимаю почему они этого не сделали до сих пор...

Тебе как вариант, работающий везде и всюду, советую сделать так:

select date_z,sum(sum_all) as sum1, sum(-sum_all*(inet-1)) as sum2 from view1 group by date_z, inet
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32423154
Leshgan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ой, забыл сказать. Конечно же IB ;-)
Спасибо, попробую...
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32428361
Leshgan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Gold, спасибо!
А если теперь мне надо посчитать кол-во по полю inet=0 и inet-1
Как это сделать одним запросом и в результате иметь три поля: дата, кол-во1, кол-во2
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32428398
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты что, издеваешься?
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32431465
Leshgan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообще-то нет. ;-) Но вот так бывает от незнания ;-(
молчу-молчу.
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32431509
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что, ты имея 0 и 1 не можешь получить коэффициенты для умножения? Это же арифметика элементарная...
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32431610
Leshgan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дело в том, что до этого считал сумму (sum), а теперь количество. А count считает как 0, так и 1. Придется делать ХП.
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32431803
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А просуммировать единицы - это тебе не то же самое?

select date_z,sum(inet) as sum1,-sum(inet-1) as sum0 from view1 group by date_z, inet
...
Рейтинг: 0 / 0
Помогите с запросом. Группировка
    #32432078
Leshgan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, не додумался ;-(
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Помогите с запросом. Группировка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]