Здравствуйте. Существует основная таблица с информацией о городах, населении и тд.(Cities) Также существует вторая таблица со списком магазинов, категорией в которой они работают и тд(Shop). Задача вывести в GridView одну таблицу, которая будет построена на SQL - запросе, а именно: вывод количества конкурентов в определенной категории, для одного города. Получился такой запрос:
SELECT `Cities`.*,
(SELECT COUNT(*) FROM `avito_parse_shops` WHERE `Cities`.`city`=`avito_parse_shops`.`city` AND `category`="Товары для детей и игрушки" AND `shop_relevance`=0) AS comp_toy,
(SELECT COUNT(*) FROM `avito_parse_shops` WHERE `Cities`.`city`=`avito_parse_shops`.`city` AND `category`="Спорт и отдых" AND `shop_relevance`=0) AS comp_sport,
(SELECT COUNT(*) FROM `avito_parse_shops` WHERE `Cities`.`city`=`avito_parse_shops`.`city` AND `category`="Посуда и товары для кухни" AND `shop_relevance`=0) AS comp_kitchen
FROM `Cities` WHERE 1
Читая документацию и форумы, так и не нашёл как вывести такой запрос через GridView
Вывод таблицы на основе SQL запроса.
-
- Сообщения: 13
- Зарегистрирован: 2019.03.11, 13:48
-
- Сообщения: 977
- Зарегистрирован: 2014.08.27, 21:54
-
- Сообщения: 251
- Зарегистрирован: 2014.08.18, 14:01
Re: Вывод таблицы на основе SQL запроса.
Прочитай доки по работе со связями. не вижу ничего сложного получить через связи. В кранем случае собери ArrayDataprovider где угодно и выведи grid