SQL基础-2

一、 函数(内置)

1、 集合函数

(1)Union 并集——去重

对两个结果集进行并集操作,不包括重复行同时进行默认规则的排序;

(2)Union All 全集——不去重

对两个结果集进行并集操作,包括重复行,不进行排序 ;

(3)Intersect 交集——求重复

对两个结果集进行交集操作,不包括重复行,同时进行默认规则的排序;

(4)Minus 差集——减去重复

对两个结果集进行差操作,不包括重复行,同时进行默认规则的排序;

2、 单行函数

(1) 概述

一条记录返回一个结果的

(2) 常用单行函数

1)-- 当前时间
1、 select distinct sysdate from emp;
2 、select sysdate from dual;
3 、select current_date from dual;
2)-- 加减日期(2天以后是几号)
 select sysdate+2 from dual;
3)-- 加月份(查询所有员工的试用期期到期(转正的日期) 3个月试用期)
格式:add_months(日期对象,月份数)

select hiredate,add_months(hiredate,3) from emp;
4)--判定函数
 decode(判定字段,值1,结果1,值2,结果2,值3,结果3....(,默认结果))
5)--字符串与日期的转换
  • 字符串转日期
    --to_date(数据,格式)
  • 日期转字符串
    --to_char(数据,格式)

3、 多行函数(组函数/聚合函数)

(1) 概述

多条记录返回一条结果的

(2) 常用多行函数

个数:count(条件)
求和: sum(条件)
最大值:max()
最小值:min()
平均值: avg()

(3) 分组

1)格式与流程
  • 格式:
    group by 分组字段

    查询公式:select 数据 from 数据来源 where 行过滤条件 group by 分组字段1,.. having 过滤组信息(以组为单位过滤) order by 排序字段..;

  • 流程:
    执行流程: from -- where --group by --having --select -- order by

二、 子查询和行转列

1、子查询

2、行转列

利用decode()实现行转列,简化表

三、 rowid和rownum(伪列)

1、rowid(去重)

2、rownum(排序,分页)

四、 表连接-92语法(多表查询)

1、内连接

有where ,满足条件才显示,不满足不显示

2、等值连接

3、非等值连接

4、自连接

一张表,当多张表使用

5、外连接

你可能感兴趣的:(SQL基础-2)