2013-05-29 3 views
1

у меня есть три таблицы, которые показаны в этом примере: sql fiddle demoожидаемый результат не получают

Эти ожидаемые условия и результат

enter image description here

Здесь вы можете проверить это activity_id и region_id в демо и получить unit_id As MEASUREMENT_UNIT_ID.

То, что я пытался до сих пор:

select t.entity_id, t.parent_id, t.length,gu.measurement_unit_id 
    from tree t 
    left join product_autoselect_units u 
    on t.parent_id = u.region_id 
    or t.parent_id = u.activity_id 
    or t.entity_id IN (ACtivity_id) 
    left join units gu 
    on u.id = gu.unit_id 
    WHERE t.entity_id IN (Region_id) 

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

enter image description here

так здесь activity_id = 5753 и region_id = 10 не получают ожидаемого результата. Я хочу, чтобы нулевые значения были результатом ... вы можете проверить демо.

Справка была бы принята с благодарностью.

ответ

0
i have tried you query on given link in your post 

try to put your id for time being like in below query and see the result 
select t.entity_id, t.parent_id, t.length,gu.measurement_unit_id 
    from tree t 
    left join product_autoselect_units u 
    on t.parent_id = u.region_id 
    or t.parent_id = u.activity_id 
    or t.entity_id IN (ACtivity_id) 
    left join units gu 
    on u.id = gu.unit_id 
where t.entity_id in (5742,5753) 
    ##WHERE t.entity_id IN (Region_id) 
+1

thankx for help .... но здесь 5742 и 5753 оба являются идентификаторами активности ... вы можете использовать по одному ... meas one activity_id и один region_id –

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