Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by / 6 сообщений из 6, страница 1 из 1
05.12.2017, 11:02
    #39564222
Sherbakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by
рад приветствовоать коллеги.
вот фидл
сейчас считает конкретно количество товаров с учетом каждого атрибута (count, group by). в данном случае указаны 3 атрибута.
Нужно полсчитать количество например белых плит в индезитах, самсунгах, так же сколько белых плит имеют конвенкцию например., как на розетке или эльдорадо, в меню слева.


Есть таблица (prodfltrsattrsvalues), в которую я ложу,
примерно такие данные.
id| prod_id | id_cat| attrs_id_val (красный 1, белый 2, индезит 4 и т.п.)| id_attr
id номер записи
prod_id номер продукта
id_cat номер категории
attrs_id_val занчение свойства (красный 1, белый 2, индезит 4 и т.п.)
id_attr номер свойства в таблице свойства

Т.е в этой таблице лежит 15 строк, с идентификатом атрибутов товара, и адентификатором товара в таблице товаров (products)
...
Рейтинг: 0 / 0
05.12.2017, 12:01
    #39564266
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by
Sherbakov,

на примере вашего набора данных - какой результат ожидаете?
...
Рейтинг: 0 / 0
05.12.2017, 12:04
    #39564273
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by
Sherbakov,

но в целом, похоже на то, что вам нужны расширенные групповые операции: rollup, cube, grouping sets.
причем, вам наибольшим образом должно подойти последнее - grouping sets....
...
Рейтинг: 0 / 0
05.12.2017, 12:22
    #39564293
Sherbakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by
Щукина АннаSherbakov,

на примере вашего набора данных - какой результат ожидаете?

как на скрине. На данный момент решил обойти это путем формирования массива подсчитанного количества атрибутов продуктов из результатов фильтрации.

но вопрос остается открытым.
...
Рейтинг: 0 / 0
05.12.2017, 13:01
    #39564328
qwwq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by
Щукина АннаSherbakov,

но в целом, похоже на то, что вам нужны расширенные групповые операции: rollup, cube, grouping sets.
причем, вам наибольшим образом должно подойти последнее - grouping sets....
нихера
данному любителю ЕАВ-а надо научиться джойниться (белыми на индезиты -- это разные записи атрибутов)
подробно описывать задачу и модель (еав бывают с прибамбасами), чтобы у вас не возникало подобных обманчивых ощущений
ну и 15 записей можно было как values описать
...
Рейтинг: 0 / 0
06.12.2017, 08:50
    #39564825
Legushka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by
какой сценарий ваш? либо надо в отдельности считать сколько по каждому признаку из атрибутов например по Beko сколько всего записей (2)
или же 2 это с учетом всех прочих введенных параметров, например Beko гораздо больше, но показывает 2 потому что кремовых столько.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / выбрать и сгрупировать и посчитать из одной таблицы по одному полю count, group by / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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