이 예에서는 두 개의 테이블을 만들고 Natural Left Join을 적용하여 두 번째 테이블에 없는 테이블의 행을 가져옵니다.
첫 번째 테이블 만들기
mysql> create table FirstTableDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.48 sec)
첫 번째 테이블에 레코드를 삽입합니다.
mysql> insert into FirstTableDemo values(1,'Bob'),(2,'John'),(3,'Carol'); Query OK, 3 rows affected (0.13 sec) Records: 3 Duplicates: 0 Warnings: 0
모든 기록을 표시합니다.
mysql> select *from FirstTableDemo;
다음은 출력입니다.
+------+-------+ | id | name | +------+-------+ | 1 | Bob | | 2 | John | | 3 | Carol | +------+-------+ 3 rows in set (0.00 sec)
두 번째 테이블을 만드는 중입니다.
mysql> create table SecondTableDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.62 sec)
두 번째 테이블에 레코드 삽입.
mysql> insert into SecondTableDemo values(1,'Bob'),(2,'John'); Query OK, 2 rows affected (0.12 sec) Records: 2 Duplicates: 0 Warnings: 0
모든 기록을 표시합니다.
mysql> select *from SecondTableDemo;
다음은 출력입니다.
+------+------+ | id | name | +------+------+ | 1 | Bob | | 2 | John | +------+------+
다음은 두 번째 테이블에 없는 행을 선택하는 구문입니다.
mysql> SELECT tbl1.* -> FROM FirstTableDemo tbl1 -> NATURAL LEFT JOIN SecondTableDemo tbl2 -> where tbl2.name IS NULL;
다음은 "Carol"과 같이 첫 번째 테이블에는 있지만 두 번째 테이블에는 없는 행을 표시하는 출력입니다.
+------+-------+ | id | name | +------+-------+ | 3 | Carol | +------+-------+ 1 row in set (0.03 sec)