Выборка данных из таблицы БД

Mar 12, 2015

Здравствуйте. Подскажите пожалуйста как осуществить вот такую задачу. Есть 3 таблицы в БД

  1. modx_shop id|name|wh_id|active 1 | A | 1 | 1 2 | B | 2 | 1 2. modx_nomenclature_goods id|name|active 1 | G1 | 1 2 | G2 | 1 3 | G3 | 1 4 | G4 | 1 5 | G5 | 1 3. modx_wh_products id|wh_id|product_id|count 1 | 1 | 1 | 10 2 | 2 | 2 | 10 3 | 1 | 3 | 10 4 | 2 | 3 | 10 5 | 2 | 5 | 10 6 | 1 | 5 | 10 В результате нужно показать вот такую таблицу Товар | A | B G1 | 10| 0 G2 | 0 | 10 G3 | 10| 10 G4 | 0 | 0 G5 | 10| 10 Главное условие это то что склады могут добавится/убавится, так же как и номенклатура Мое решение свелось к тому что я получаю вот такой массив array( [0] => array( "product" => G1, "data" => array( [0] => array( "shop" => "A", "count" => 10 ) ) ) ) Далее с помощью foreach и еще 1го дополнительного запроса собирается таблица. На сколько это будет верно, и если есть подсказка на более лучшее решение прошу подсказать