SQL内外连

分组查询
select 查询信息 from 表名
where 条件
group by 按照列分组(可多个 ,隔开)
order by 排序方式
(查询信息如果列名和聚合函数同时出现,要么在聚合函数中出现,要么就使用分组进行查询)

having 条件    分组筛选(一般和group by连用,位置在其后)

where:用来筛选from子句指定的操作所产生的行
group by:用来分组where子句输出
having:用来从分组的结果中筛选行

1.分组查询是针对表中不同的组分类统计和输出的
2.having子句能够在分组的基础上,再次进行筛选
3.在SQL语句中使用次序,where-->group by-->having

解剖:
1.select  查询什么
2.from  从哪里查询
3.where  列名条件(模糊查询,关系表达式查询)
4.grop by  分组查询
5.haing  分组后的聚合函数筛选

表连接
select 列 from 表1,表2
where 条件(表1.主键列=表2.外键列)

内连接(inner join)
select 列 from 表1 inner join 表2
on 条件(表1.主键列=表2.外键列)

as也可以为表赋别名

外连接(两外连接主表位置相反)
     左外连接(left join)
select 列
from 主表
left outer join 从表
on (表1.主键列=表2.外键列)

右外连接(right join)
select 列
from 从表
right outer join 主表
on (表1.主键列=表2.外键列)

主表(左表/右表)中的数据逐条匹配从表中的数据
1.匹配,返回到结果集
2.无匹配,null值返回到结果集

上一篇:同步内核缓冲区sync、fsync和fdatasync函数


下一篇:LINUX 文件系统JBD ----深入理解Fsync