2012-05-09 4 views
0

Im пытается получить данные для отображения с использованием mysql из четырех таблиц (я думаю), но ive перечислены все 4 таблицы ниже, а также столбцы.Как отображать данные из 4 таблиц?

table1 = order_product 
Columns = order_product_id, order_id, product_id, name, price, total, tax, quantity 
table2 = product_to_category 
Columns - product_id, category_id 
table3 = category_description 
Columns - category_id, name 
table4 = category 
Columns - category_id, parent_id 

Im пытается отобразить (столбец) -name из таблицы 3 вместе с
общая (колонка) -quantity проданных товаров & (колонка) -Total суммы в каждой категории из таблицы 1, в & каждая из следующих 4 категорий.
Основная категория category_id = 177, но
это 3 подкатегорий существо, category_id = 191,192,193
все 3 связаны с основной категорией с использованием parent_category = 177 в таблице 4?
Я надеюсь, что ив объяснил это гораздо лучше & предоставили достаточно подробно & ТНХ за любую помощь

+0

Узнайте о [SQL присоединяется] (http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html). – eggyal

ответ

0

Есть SliCkeR способов поставить, но я думаю, что этот запрос будет работать для вас.

SELECT t3.name, t2.category_id, sum(t1.quantity), sum(t1.total) 
FROM table1 t1 
LEFT OUTER JOIN table2 t2 ON t1.product_id = t2.product_id 
LEFT OUTER JOIN table3 t3 ON t2.category_id = t3.category_id 
WHERE t2.category_id = 177 
OR t2.category_id IN (SELECT t4.parent_id FROM table4 t4 WHERE t4.category_id = 177) 
GROUP BY t3.name, t2.category_id 
+0

благодарю вас за помощь, но это показывает только 1 строку и то, что я показываю, это 4 строки. Верхняя строка, показывающая название основной категории (id = 177), является category_description = (name) вместе с итоговыми суммами (количество и сумма) категории_id = 191 + 192 + 193, а затем следующие 3 строки с указанием category_desciption = (имя) 191 192 и 193, а также итоги (количество и сумма) каждой категории_id = 191, 192 и 193, которые связаны с основной категорией_id = 177 с использованием parent_id = 177 в таблице категорий – harryo

Смежные вопросы