![]() |
|
Модераторы: skyboy |
![]()
|
|
| Цербер |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
Доброго времени суток уважаемые форумчане!
Есть связка таблиц: products properties values id id id ... product_id property_id ... ... К продукту привязаны несколько свойств, а к свойствам в свою очередь привязаны несколько значений. Возможно ли вытащить данные в таком формате product property_1 value_1 value_2 value_3 property_2 value_2.1 value_2.2 property_3 value_3.1 value_3.2 value_3.3 value_3.4 а не как обычно с join-ами product property_1 value_1 product property_1 value_2 product property_1 value_3 и т.д. Если это реально можно запрос или ссылочку на пример. Всем заранее спасибо! Это сообщение отредактировал(а) Цербер - 8.10.2010, 09:48 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Да, возможно. Однако гораздо разумнее делать такую группировку на клиенте.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Цербер |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
В моём случае клиентом (если я правильно понял значение клиента) является пхп. Т.е. придётся всё равно пыхом разбирать по очереди запросы и выполнять дополнительные запросы чтобы в итоге сформировать данные в нужном формате !? А кстати, если возможно, то как это реализуется? Интересно! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Да с какой радости? пхп просто получает всё в виде таблицы product property_1 value_1 product property_1 value_2 product property_1 value_3 product property_2 value_2.1 product property_2 value_2.2 product property_3 value_3.1 product property_3 value_3.2 product property_3 value_3.3 product property_3 value_3.4 и затем уже обеспечивает вывод деревом. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Цербер |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
Akina ага, всё верно, если юзать джойны то всё так и возвращается.
Так я вот и спрашиваю можно ли запросом мускула вернуть данные в том виде что я описал выше. Если нет, то такой вопрос: Лучше использовать джойны учитывая что в связке участвует около 5-6 таблиц (в примере не стал все постить) или лучше юзать дополнительные запросы в пыхе? Раньше не задумывался о возврате данных с мускула в виде дерева, поэтому решил поинтересоваться, возможно ли такое. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
встречный вопрос: как ты себе подобное представляешь? Реляционное СУБД возвращает результат в виде, который можно условно назвать "таблицей". Как в таблице можно представить "дерево"? "Ячейки" пропускать, делать пустыми? что можно сделать, так это типа такого: product1 property1,property2,property3 value1.1,value1.2;value2.1,value2.2; то есть сгруппировать данные в одну строку для каждого продукта. а потом парсить на стороне РНР. быстрее не будет. попробуй сам. учитывая, что только тебе известна структура БД, это единственный выход. |
|||
|
||||
| Цербер |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 21.11.2007 Репутация: нет Всего: 1 |
skyboy, спасибо =) я собственно даже и не представлял как это возможно. Думал, может я не в курсе, что есть таки способ и решил спросить у компетентных людей
Буду решать вопрос пыхой =) Всем спасибо! Тема закрыта =) |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |