查询-2

来源:互联网 发布:如何定义一个新数组 编辑:程序博客网 时间:2024/06/17 11:43

INNER JOIN内连接:在表中至少一个匹配时,则返回记录

SELECT 字段1 ,字段 2 ,…… FROM table_1

INNER JOIN table_2  ON  table_1  字段x=table_2字段y;

#INNER JOIN 与 JOIN 是相同的;

#如table_1中的行在table_2中没有匹配,则不返回;

内连接查询——等值和非等值的连接查询

(1)与单表查询类似,都是SELECT 语句

(2)把多个表放到FROM后,并用逗号隔开;

(3)可使用AS关键字取别名,便于引用

(4)如无重名查询字段则可省略数据表指定

#非等值连接查询:

SELECT subjectName,gradeName FROM  subject ,grade;

                                                                        ▔▔▔▔▔▔▔↓▔▔▔▔▔▔▔▔

                                                              返回记录数为两表记录数的乘积

#等值查询:

SELECT subjectName,gradeName FROM subject,grade

WHERE subject.gradeID =grade.gradeID;▔▔▔▔▔▔▔↓▔▔▔▔▔▔▔▔

                                                                        等效于内连接

外连接:
左外连接:(LEET JOIN)

从左表中返回所有的记录,即便在右表中,没有匹配的行;

SELECT 字段1 ,字段2 ,……FROM table1

LEFT [OUTER] JOIN table2 ON table_1  字段x=table_2字段y; 

右外连接(RIGHT JOIN) 

从右表中返回所有的记录,即便在左表中,没有匹配的行;

SELECT 字段1 ,字段2 ,……FROM table1

LEFT [OUTER] JOIN table2 ON table_1  字段x=table_2字段y; 

 

 
0 0