连接查询
连接查询是将两个或两个以上的表按照某个条件连接起来,从中选取需要的数据;
t_book表: id bookName price author bookTypeId
t_bookType表: id bookTypeNameeg:笛卡尔积查询俩个表
select * from t_book,t_bookType;
内连接查询
内连接查询是一种最常用的连接查询。内连接查询可以查询两个或者两个以上的表;
eg:通过t_book.bookTypeId=t_bookType.id查询
select * from t_book,t_bookType where t_book.bookTypeId=t_bookType.id;
外连接查询
外连接可以查出某一张表的所有信息;
SELECT 属性名列表 FROM 表名 1 LEFT|RIGHT JOIN 表名 2 ON 表名 1.属性名 1=表名 2.属性名 2;
左连接查询
eg:将左表完全查询出来
可以查询出“表名 1”的所有记录,而“表名 2”中,只能查询出匹配的记录;
右连接查询
可以查询出“表名 2”的所有记录,而“表名 1”中,只能查询出匹配的记录;
eg:将右表完全查询出来
SELECT tb.bookName,tb.author,tby.bookTypeName FROM t_book tb RIGHT JOIN t_bookType tby ON tb.bookTypeId=tby.id;
多条件连接查询
eg:条件为多个:tb.bookTypeId=tby.id 和tb.price>70
SELECT tb.bookName,tb.author,tby.bookTypeName FROM t_book tb,t_bookType tby WHERE tb.bookTypeId=tby.id AND tb.price>70;