要查找已分配部门的firstname 和lastname 以及dept_num
SELECT e.last_name, e.first_name, d.dept_no FROM employees AS e. dept_emp AS d WHERE e.emp_no = d.emp_no
```sql
将e.emp_no 和 d.emp_no中的last name 和first_name都重命名为一个 新 e和d
什么是链接查询
概念 根据两个表或多个表的列之间的关系,从这些表中查询数据
目的:实现多个表查询操作
知道了查询的概念之后,什么时候用连接查询
一般是用作关联两张
SQL-92标准所定义的FROM子句的连接语法格式为:
*** FROM join_table join_type join_table[ON (join_condition)]
***
其中join_table指出参与连接操作的表名,连接可以对同一个表操作,也可以对多表操作,对同一个表操作的连接又称做自连接。join_type 指出连接类型。join_condition指连接条件。
内连接: INNER JOIN
使用比较运算符 (=、>、<、<>、>=、!>和!<)进行表间的比较操作,查询与链接条件相匹配的数据.根据比较运算符不同,内连接分为等值连接和不等链接两种
等值连接 在连接条件中使用等于号(=)运算符,其查询结果中列出被链接表中所有 =列包括其中的重复列
select* from T_student s inner join T_class c on s.classId= C.CLASSId = c.classID
外连接 :
我们有左链接 右链接 和全链接
左连杰 返回左表中的所有行,如果左表中行在右表中没有匹配航,则在结果中返回空值
举例 select*from T_student s left join T_class on s.classID=C.classId' 做链接显示左表全部行,和右表和左表向同行
右表中 概念与左连杰相反,如果有行中的行在左边没有想匹配的在返回空值
全款接中。返回左表和右表的所有行,当某行在另一表中没有匹配行,则另一表的列返回空值
select* from T_student s full join t_class c on s.classID=c.classID
交叉连接 不带where语句,他会返回;两个表的行数的成绩
select*from T_student corss join t_class
sl