📅  最后修改于: 2020-11-11 09:34:50             🧑  作者: Mango
SQL左联接返回左表中的所有值,并且还包括右表中的匹配值,如果没有匹配的联接值,则返回NULL。
左联接的基本语法:
SELECT table1.column1, table2.column2....
FROM table1
LEFTJOIN table2
ON table1.column_field = table2.column_field;
让我们在此示例中使用两个表来详细说明所有事情:
客户表:
ID | NAME | AGE | SALARY |
---|---|---|---|
1 | ARYAN | 51 | 56000 |
2 | AROHI | 21 | 25000 |
3 | VINEET | 24 | 31000 |
4 | AJEET | 23 | 32000 |
5 | RAVI | 23 | 42000 |
这是第二张桌子
订单表:
O_ID | DATE | CUSTOMER_ID | AMOUNT |
---|---|---|---|
001 | 20-01-2012 | 2 | 3000 |
002 | 12-02-2012 | 2 | 2000 |
003 | 22-03-2012 | 3 | 4000 |
004 | 11-04-2012 | 4 | 5000 |
用LEFT JOIN将这两个表连接起来:
SQL SELECT ID, NAME, AMOUNT,DATE
FROM CUSTOMER
LEFT JOIN ORDER
ON CUSTOMER.ID = ORDER.CUSTOMER_ID;
这将产生以下结果:
ID | NAME | AMOUNT | DATE |
---|---|---|---|
1 | ARYAN | NULL | NULL |
2 | AROHI | 3000 | 20-01-2012 |
2 | AROHI | 2000 | 12-02-2012 |
3 | VINEET | 4000 | 22-03-2012 |
4 | AJEET | 5000 | 11-04-2012 |
5 | RAVI | NULL | NULL |