- JOIN 等价于 INNER JOIN,是简化的写法,JOIN 返回两个表中联结字段相等的行,即得到的结果是两张表的交集。
- 当至少有一个同属于两表的行符合联接条件时,内联接才返回行。 内联接消除与另一个表中的任何行不匹配的行
语法
table_reference
[INNER | CROSS] JOIN
| STRAIGHT_JOIN
table_factor
[ ON search_condition
| USING (column_name [, column_name] ...)
]
[WHERE where_condition];
参数 |
说明 |
||||||||||||||||||||||||||||||||
table_reference{ table_factor | joined_table } |
|
||||||||||||||||||||||||||||||||
table_factor{ tbl_name [PARTITION partition_name, [partition_name] … ] [[AS] alias] [ index_hint, [index_hint] … ] | [LATERAL] table_subquery [AS] alias [(col_list)] | ( table_references ) [ ON search_condition | USING (column_name [, column_name] ...) ] } |
|
||||||||||||||||||||||||||||||||
search_condition |
条件语句 |
||||||||||||||||||||||||||||||||
column_name |
数据列名 |
||||||||||||||||||||||||||||||||
[WHERE where_condition] |
WHERE条件语句 |
示例
SELECT id,name
FROM student s
INNER JOIN class c
ON s.id = c.studentID;
运行结果如下:
id |
name |
202213 |
张三 |
322342 |
李四 |
示例
SELECT id,name
FROM student s
INNER JOIN class c
ON s.id = c.studentID
WHERE s.name LIKE '张%';
运行结果如下:
id |
name |
202213 |
张三 |
注
- 如果省略 ON 条件,将会返回两张表的合并结果