大家好,又见面了,我是你们的朋友全栈君。
目录
创建两个表
fruits表,包含水果 id、名字、价格
orders表,包含 id 和订单号(num)
1.内连接查询(INNOR JOIN)
1.隐式内连接使用普通sql语句
select fruits.id,name,price,num from fruits,orders where fruits.id=orders.id;
2.显式内连接 查询语句(结果与上图相同)
select fruits.id,name,price,num from fruits [inner] join orders on fruits.id=orders.id;
inner join语法是ANSI SQL的标准规范,使用inner join连接语法能够确保不会忘记连接条件
2.自连接查询
例如:
select f1.id,f1.name
from fruits AS f1,fruits AS f2
where f1.id = f2.id and f2.id = ’01’;
3.外连接查询
两个表进行外连接查询时,以主表为基准(将主表的数据全部显示),从表显示与主表对应的数据,如果对应的没有,则以null补齐
- LEFT JOIN(左连接):返回左边表中的所有记录和右表中与连接字段相等的记录。(左边是主表)
- RIGHT JOIN(右连接):返回右边表中的所有记录和右表中与连接字段相等的记录。(右边是主表)
1.LEFT JOIN(左连接)
select fruits.id,orders.num from fruits left join orders on fruits.id=orders.id;
2.RIGHT JOIN(右连接)
select fruits.id,orders.num from fruits right join orders on fruits.id=orders.id;
4.复合条件连接查询
select name,price,num
from fruits inner join orders
on fruits.id=orders.id AND fruits.price>4;
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131978.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...