powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Помогите с запросом
21 сообщений из 21, страница 1 из 1
Помогите с запросом
    #39581484
noob2018
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Подскажите с запросом.
Исходная таблица:
nametypepricestuff125stuff223stuff314stuff427stuff518
Результат:
nametypepricesumType1sumType2stuff1251215stuff2231215stuff3141215stuff4271215stuff5181215
Нужны колонки с суммами по каждому типу.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581494
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
select type, sum(price) from table group by type


А дальше сам.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581527
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
noob2018,

Какой вопрос, такой и ответ. Что нужно? Шахматка? С неопределённым количеством "type"? Или вот. Stuff1 всегда с type=2? Исходную таблицу дайте побольше. Непонятно что суммировать.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581530
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а зачем такой странный результат?
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581541
noob2018
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, не совсем стандартно и странно, но нужен именно такой результат. Нужно чтобы итоговая сумма была в отдельном столбце.
К примеру:
namepriceтовар15товр24товар37товар46

Сумма колонки price в колонке sum
namepricesumтовар1522товр2422товар3722товар4622
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581542
noob2018
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В первом примере нужно еще разбить по типам
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581550
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
noob2018,

немного не то, но может быть тебе подойдёт

Код: sql
1.
2.
3.
4.
5.
6.
7.
select
  name,
  type,
  price,
  sum(price) over(partition by type) as SumByType
from mytable
order by name
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581571
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

Да это тоже не пойдёт. Наверно. У конкретного товара прайс всегда один? Тайп один? Вопрос "зачем суммировать прайс" не задаю. Нужен DDL таблицы (таблиц).
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581575
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KreatorXXI,

я вообще не понимаю зачем прайс суммировать. Это же не сумма продаж
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581594
noob2018
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да неважно что суммировать, пусть это будет сумма розничная. Вопрос в том, как сумму по какому-то столбцу отобразить в отдельном столбце
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581600
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
noob2018,

Ну если неважно, то второй пост (wadman) годится.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581710
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
select T.type, X.price
from table as T
   left join (select sum(price) as price from table) as X
   on (1=1)
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581719
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
noob2018,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
select
  name,
  type,
  price,
  sum(case when type=1 then price end) over() as SumType1,
  sum(case when type=2 then price end) over() as SumType2
from mytable
order by name
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581731
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
noob2018Вопрос в том, как сумму по какому-то столбцу отобразить в отдельном столбце
Она всегда будет в отдельном столбце, если, конечно, конкатенацию сумм в строках не сделать, типа такого
Код: sql
1.
2.
3.
SELECT
  CAST( SUM( FIELD1 ) AS VARCHAR( 20 ) ) || ' | ' || CAST( SUM( FIELD2 ) AS VARCHAR( 20 ) )
FROM TABLE1


Но маловероятно, что у тебя проблема разделить суммы из одного столбца в два. Значит, она всегда будет в отдельном столбце.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581733
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис,

А, да, наверно ты прав. И даже без over().
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581737
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock,

без over() придётся подзапросы делать
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581760
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
noob2018Добрый день!
Подскажите с запросом.
Исходная таблица:
nametypepricestuff125stuff223stuff314stuff427stuff518
Результат:
nametypepricesumType1sumType2stuff1251215stuff2231215stuff3141215stuff4271215stuff5181215
Нужны колонки с суммами по каждому типу.
Если заранее неизвестно, сколько типов - нельзя. Аминь.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581764
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

Чё это вдруг? Очень даже можно.
Автору нужен такой запрос:
Код: sql
1.
select name, type, price from table1


Остальное в построителе отчёта.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581812
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WildSery,
зачем додумывать за ТС.
Нужны колонки с суммами по каждому типу.

Использовать "построитель отчётов" (или ещё что) - вопроса не было. В "построителе отчётов" вообще много чего сделать можно, но к теме "помогите с запросом" сие не относится.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581847
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисYuRock,

без over() придётся подзапросы делать
Возможно ТС'у SUM с кейсом внутри достаточно.
...
Рейтинг: 0 / 0
Помогите с запросом
    #39581973
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

Так я написал же запрос.
Да, не без иронии, но ведь по сути же правильно?
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Помогите с запросом
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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