SQL -де үш кестеге қосылудың қарапайым жолдары (суреттермен)

Мазмұны:

SQL -де үш кестеге қосылудың қарапайым жолдары (суреттермен)
SQL -де үш кестеге қосылудың қарапайым жолдары (суреттермен)

Бейне: SQL -де үш кестеге қосылудың қарапайым жолдары (суреттермен)

Бейне: SQL -де үш кестеге қосылудың қарапайым жолдары (суреттермен)
Бейне: Как это вообще работает? Разбираем совсем одноразовый мотор 1.0 Ecoboost от Ford 2024, Сәуір
Anonim

SQL -де кестелермен жұмыс істеу кезінде үш немесе одан да көп кестені сұрау қажет болатын жағдайлар болады. Уақытша қосылған кестені құру үшін екі кестеге қосылу үшін алдымен біріктіру мәлімдемесін қолдана отырып, үш кестеге қосыла аласыз. Содан кейін үшінші кестеге қосылу үшін екінші қосылу мәлімдемесін қолданыңыз.

Қадамдар

11227971 1
11227971 1

Қадам 1. Сұрау қажет баған атауларынан кейін SELECT теріңіз

Сұрау қажет үшеуінің әрқайсысынан баған атауын теріңіз. Әр баған атауын үтірмен бөліңіз. Бұл мысалда біз «Оқушылар», «Мектептер», «Мәліметтер» деп аталатын үш кестеден сұрау жүргізетін боламыз.

Мысалы SELECT student_id, student_name, school_id, school, grade

11227971 2
11227971 2

Қадам 2. FROM деп теріңіз, содан кейін бірінші кесте атауы

Бұл бөлек жолда немесе бірінші мәлімдеуден кейін бірден жүруі мүмкін. Біздің мысалда FROM студенттерін жазамыз.

11227971 3
11227971 3

Қадам 3. Қосылу мәлімдемесін теріп, екінші кестенің атын жазыңыз

Екі кестеге қосылу үшін қосылу мәлімдемелерінің төрт түрі бар. Олар келесідей:

  • JOIN деп теріңіз Ішкі қосылу. Бұл екі кестеде де сәйкес мәндері бар жазбаларды қайтарады. Мысалы, студенттерден мәліметтерге қосылыңыз.
  • Мұны істеу үшін LEFT JOIN теріңіз Сыртқы сол жақ қосылу. Бұл сол жақ кестеден барлық жазбаларды және оң жақ кестеден сәйкес мәндерді қайтарады. Мысалы, студенттерден LOFT JOIN мәліметтері.
  • A істеу үшін RIGHT JOIN теріңіз Сыртқы оң қосылу. Бұл оң кестеден барлық жазбаларды және сол жақ кестеден сәйкес мәндерді қайтарады. Мысалы, студенттерден ДҰРЫС ҚОСЫЛЫҢЫЗ Толық мәліметтер.
  • A жасау үшін FULL JOIN теріңіз Толық сыртқы қосылу. Бұл екі кестеден барлық жазбаларды қайтарады. Мысалы, студенттерден толық қосылыңыз Толық мәліметтер.
11227971 4
11227971 4

Қадам 4. Кестелер мен бағандар қосылатын «ON» операторын теріңіз

Бұл мәлімдеме синтаксисі «ON table_1.primary_key = table_2.foreign_key». «Table_1» - сіз қосылатын бірінші кестенің атауы, ал «Primary_key» - бірінші кестедегі негізгі баған атауы. «Table_2» - екінші кестенің атауы, ал «шетелдік_кілт» - бірінші кестенің бастапқы бағанына сәйкес келетін екінші кестенің баған атауы.

  • Біздің мысалда «Студенттер» - бірінші кесте, ал «student_id» - Студенттер кестесінің негізгі кілті, ол Мәліметтер кестесінде де бар. Сонымен, біз ON Student.student_id = Details.student_id деп тереміз. Бұл Студенттер кестесіне Толық мәліметтер кестесімен қосылып, «student_id» бастапқы кілт ретінде қолданылады.
  • Немесе, егер student_name бағанасы «Толық мәліметтер» кестесінде болса, ON Student.student_id = Details.student_name теру арқылы student_id өрісінің орнына student_name бағанын көрсетуге болады.
11227971 5
11227971 5

Қадам 5. Қосылу мәлімдемесін теріңіз, содан кейін үшінші кестенің аты

Бұл бөлек жолда немесе алғашқы екі кестеге қосылған «ON» операторынан кейін бірден болуы мүмкін. Сіз төрт біріктіру мәлімдемесінің кез келгенін қолдана аласыз.

Біздің мысалда біз JOIN Мектептерін тереміз

11227971 6
11227971 6

Қадам 6. Қай кестелер мен бағандар қосылатынын көрсететін «ON» операторын теріңіз

Үшінші қосылудың синтаксисі - «ON table_3.primary_key = table_1.foreign_key». «Кесте_1». «Table_3 - бұл үшінші кестенің атауы. Бұл үшінші кестенің негізгі бағанының атауын және бірінші кестенің сыртқы кілтін қолдана отырып, соңғы біріктіруге үшінші кестені қосады. Біздің мысалда біз ON Schools.student_id = Оқушыларды тереміз..student_id. Бүкіл қосылу мәлімдемесі келесідей болуы керек:

    Student_id, student_name, school_id, school, grade оқушыларынан таңдаңыз ТОЛЫҚ ҚОСЫЛЫҢЫЗ Толығырақ Оқушылар туралы.student_id = Толық мәліметтер.

Ұсынылған: