Sobes.tech
Junior

SQLде сол жактан бириктирүү (left join) эмне?

sobes.tech AI

AIден жооп

SQL-деги SOL JOIN же LEFT OUTER JOIN "сол" таблицадан бардык саптарды жана "оң" таблицадан тиешелүү саптарды кайтарат. Эгер оң таблицада шайкештик табылбаса, оң таблицанын багыттары NULL болот.

  • Синтаксис:

    SELECT багыттар_тизмеси
    FROM таблица1  -- Сол таблица
    LEFT JOIN таблица2 ON таблица1.багыт = таблица2.багыт;
    
  • Жыйынтык:

    • таблица1ден бардык саптар.
    • таблица2ден тиешелүү саптар.
    • таблица1ден жана таблица2ден шайкеш келбеген саптар үчүн, таблица2 багыттары NULL болот.
  • Мисал:

    Эсептейли, бизде эки таблица бар: Orders жана Customers. Биз бардык буйрутмалардын тизмегин жана аларды жасаган кардарлар тууралуу маалымат алгыбыз келет. Эгер буйрутма кардарсыз болсо (мисалы, өчүрүлгөн), биз дагы да ошол буйрутманы көргүбүз келет.

    -- Orders таблица
    -- OrderID | CustomerID | OrderDate
    -- 1       | 101        | 2023-10-26
    -- 2       | 102        | 2023-10-26
    -- 3       | NULL       | 2023-10-27
    
    -- Customers таблица
    -- CustomerID | CustomerName
    -- 101        | Alice
    -- 102        | Bob
    
    SELECT
        O.OrderID,
        C.CustomerName
    FROM
        Orders AS O
    LEFT JOIN
        Customers AS C ON O.CustomerID = C.CustomerID;
    
    OrderID CustomerName
    1 Alice
    2 Bob
    3 NULL