2013-03-23 1 views
2

У меня 2 таблицы, первый из них MASTER_TABLE с полями ID, STATUS_CODE, STATUS_SUBCODE, SUBJECT_CODE, SUBJECT_SUBCODE и вторая таблица CODE_TABLE который имеет уникальное описание для каждой комбинации кода и подкода. Она имеет следующие поля КОД, субкода и ОПИСАНИЕPerforming РЕГИСТРИРУЙТЕСЬ более чем на 1 колонке оракула запроса

Как написать запрос для извлечения ID, STATUS и ПРЕДМЕТ, например, для каждой комбинации STATUS_CODE и STATUS_SUBCODE в MASTER_TABLE I должны получить значение STATUS в CODE_TABLE, так же я должен сделать то же самое для ПРЕДМЕТ

ответ

2

Вы должны присоединиться к дважды к CODE_TABLE - один раз для каждого типа взгляда вверх, так distingui ш строки из Афоризм, вы должны псевдоним, по крайней мере один (но обычно один бы псевдоним и, как показано ниже):

select 
    mt.ID, 
    ct1.DESCRIPTION as STATUS 
    ct2.DESCRIPTION as SUBJECT 
from MASTER_TABLE mt 
left join CODE_TABLE ct1 
    on ct1.CODE = mt.STATUS_CODE and ct1.SUBCODE = mt.STATUS_SUBCODE 
left join CODE_TABLE ct2 
    on ct2.CODE = mt.SUBJECT_CODE and ct2.SUBCODE = mt.SUBJECT_SUBCODE 

Я сделал присоединяется left присоединяется в случае, если данные отсутствуют CODE_TABLE, в этом случае это запрос будет производить null для соответствующего описания.

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

  • Нет связанных вопросов^_^