Different combinations of combinations are confusing, can someone cook a little?

Looking for an invitation this weekend.

I read "Join" and watched a ton of JOIN, LEFT, RIGHT, OUTER, FULL, INNER combinations. I checked the MSDN docs and it looks like only allowed combinations are in the form:

< join_type > ::=
    [ INNER | { { LEFT | RIGHT | FULL } [ OUTER] } ]
    [ < join_hint > ]
    JOIN

so from this, I suppose, you can only get:

JOIN / INNER JOIN
LEFT JOIN / LEFT OUTER JOIN
RIGHT JOIN / RIGHT OUTER JOIN
FULL JOIN / FULL OUTER JOIN

In addition, OUTER is an optional keyword, so LEFT JOIN and LEFT OUTER JOIN are actually the same. It's right? What is the difference between JOIN and FULL OUTER JOIN? I saw JOIN alone in the script, but could not break it, because the request was a bit complicated.

+3
source share
5 answers

: CROSS, INNER OUTER.

  • - .
  • , .
  • "origin" . , , NULL.

( ) : LEFT, RIGHT FULL.

  • - .
  • - .
  • - .

LEFT, RIGHT FULL OUTER, OUTER , (.. "LEFT JOIN" ).

+4

, :

JOIN
INNER JOIN
LEFT JOIN
LEFT OUTER JOIN
RIGHT JOIN
RIGHT OUTER JOIN
FULL JOIN
FULL OUTER JOIN

ON.

, OUTER , RIGHT JOIN - , RIGHT OUTER JOIN, LEFT FULL. , INNER , , JOIN INNER JOIN.

CROSS JOIN, ON. ,

FROM A CROSS JOIN B

FROM A,B

.

JOIN FULL OUTER JOIN .

FROM A JOIN B ON <condition>

, . ,

FROM A FULL OUTER JOIN B ON <condition>

, true , LEFT OUTER JOIN RIGHT OUTER JOIN ON.

+1

, :

<join_type> ::=
    [ INNER | { { LEFT | RIGHT | FULL } [ OUTER] } ]
    [ <join_hint> ]
    JOIN

, :

       JOIN                    INNER JOIN
 LEFT  JOIN              LEFT  OUTER JOIN
 RIGHT JOIN              RIGHT OUTER JOIN
 FULL  JOIN              FULL  OUTER JOIN

OUTER , . SQL NATURAL JOIN CROSS JOIN. INNER ; "" - .

, , ; INNER JOIN LEFT JOIN ( , - ).

FULL JOIN (INNER) JOIN. INNER JOIN ( ON USING). LEFT OUTER JOIN INNER JOIN , , NULL . " ". ( " " ). FULL JOIN INNER JOIN . FULL JOIN , .

+1

The Wikipedia article on joining SQL is pretty clear and has many examples.

0
source

Source: https://habr.com/ru/post/1714746/


All Articles