2015-10-14 2 views
0

Это мой первый пост. Извините, если избыточно или недостаточно.SQL Query to join description description for 2 parts

Я новичок в SQL и, возможно, подумал об этом в блок разума.

У меня есть таблица, в которой есть «parent_item_id» и «child_item_id», но нет описаний. Я хотел сделать запрос для включения описаний для обоих этих элементов.

Моя точка была:

SELECT B.P_ITEM as Parent, I.description as P_desc, B.C_ITEM, I.description as C_desc 
from boms B 
left join items I on B.P_ITEM = I.item_id 

Я понимаю, что поставит описание родителя в течение обоих родителей и детей полей.

Как создать запрос, который предоставит мне описания для родительского и дочернего элементов в строке?

Благодаря

ответ

0

Давайте предположим, что ваш счет материалов очень просто, как это:

ID p_item c_item quantity 
1 1   500  1 
2 1   600  4 
стол

Элементы могут иметь

ID description 
1 Big Computer 
500 128GB SSD 
600 2GB Memory 

Ваш запрос будет выглядеть следующим образом:

select b.*, p.description, c.description 
from bom b 
inner join items p on p.id = b.p_item 
inner join items c on c.id = b.c_item 

Результат:

| id | p_item | c_item | quantity | description | description | 
|----|--------|--------|----------|--------------|-------------| 
| 1 |  1 | 500 |  1 | Big Computer | 128G SSD | 
| 2 |  1 | 600 |  4 | Big Computer | 2GB Memory | 

Пример: http://sqlfiddle.com/#!9/340e07/1

+0

Спасибо, что простое решение и работает как чавканье. Я должен буду помнить внутренние стычки! – Sareed23