Несколько объединений в запросе SQL хорошо? Или есть лучший способ? - PullRequest
0 голосов
/ 23 января 2020

Является ли это распространенным способом получения информации из разных таблиц по идентификаторам (parent-child) в одном запросе? Также есть еще 6 объединений, но я обрезал это ... или вы на самом деле делаете это по-другому?

select *

from 
    ((((((((car 
left join 
    family on car.Family_ID = family.Family_ID) 
Left Join 
     material on car.Material_ID = material.Material_ID) 
Left Join 
    contactperson on car.ContactPerson_ID = contactperson.ContactPerson_ID) 
Left Join 
    customercontract on car.CustomerContract_ID = customercontract.CustomerContract_ID) 
Left Join 
    customerplant on car.CustomerPlant_ID = customerplant.CustomerPlant_ID) 

1 Ответ

4 голосов
/ 23 января 2020

Все эти круглые скобки не вредят логике c, но сбивают с толку и могут быть подвержены ошибкам.

Кроме того, я бы предложил использовать псевдонимы для каждой таблицы, чтобы их было легче читать и отлаживать.

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

select *
from car c
left join family f on c.Family_ID = f.Family_ID
left join material m on c.Material_ID = m.Material_ID
left join contactperson p on c.ContactPerson_ID = p.ContactPerson_ID
left join customercontract t on c.CustomerContract_ID = t.CustomerContract_ID
left join customerplant a on c.CustomerPlant_ID = a.CustomerPlant_ID
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...