sql 学习
在sql中,sql执行顺序为:
select-from-where-group by-having-order by
from:后面跟需要检索数据的表;from解析顺序为自右向左,如果是多表查询,表后面尽量跟别名,防止语义上的错误
where:给需要检索的数据源加上过滤条件
group by:对检索的数据源进行分组,解析顺序为自左向右。
having:和group by连用,对分组的数据加上条件。
order by:对过滤后的数据进行排序,ASC 升序,DESC 降序
连接
left join:左外连接,格式为 select * from table1 left join table2 on 加关联条件,它是以左边的表为主表,查询出右边满足条件的数据,如果没有满足条件的数据,将为空值
right join:和left join相反
inner join:内连接,两张表的数据必须有对应的,才会检索出数据,没有相匹配条件的数据,将不会检索出数据。
full join:全连接,显示所有的数据,当左表或右表中没有匹配条件的数据的时候,将显示为空值;
cross join:交叉连接,迪卡尔积,返回左表中的没一行与右表中的所有行的组合,比如左表四条数据,右表四条数据,就会查出4*4=16条数据,cross join 后只能跟where,不能跟on