【MySQL】连接查询中on和where的区别

有一些新手可能会有这样的疑问,总是在一些查询语句的题目中发现,有些是用on后面加连接条件,有些又是在where上加连接条件,到底这两种写法有什么区别,分别对应什么场景呢?(只适合新手哦,大神勿喷)

其实这是两种sql规范,分别是sql92和sql99的写法,下面就来简单介绍一下这两种规范的连接语句写法:

 

sql92

 

select 查询列表

from 表1 别名 [连接类型]

join  表2 别名

where   连接条件

   [and 筛选条件(分组前)]

   [group by 分组]

   [having 筛选条件(分组后)]

   [order by 排序条件]

 

sql99

 

select 查询列表

from 表1 别名 [连接类型]

join  表2 别名

on   连接条件

   [where 筛选条件(分组前)]

   [group by 分组]

   [having 筛选条件(分组后)]

   [order by 排序条件]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值