一、单行函数
函数分为系统内置函数自定义函数(后期学习的plsql 中定义);了解系统内置函数(方法),重点掌握 to_date 、 to_char (字符和日期的转换)
根据函数的返回结果,我们将函数分为单行函数和多行函数
1)、单行函数:一条记录返回一个结果
2)、多行函数 组函数 聚合函数 (重点) :多条记录 返回一个结果 (重点)
1、日期函数
日期函数: 注意区分 db数据库时间 ,java应用服务器的时间。
以一方为准 oracle以内部数字格式存储日期:年,月,日,小时,分钟,秒
···sysdate/current_date -- 以date类型返回当前的日期
···add_months(d,x) -- 返回加上x月后的日期d的值
···LAST_DAY(d) -- 返回的所在月份的最后一天
···months_between(date1,date2) -- 返回date1和date2之间月的数目
···next_day(sysdate,'星期一') -- 下周星期一
2、转换函数(重点***)
to_date(c,m) -- 字符串以指定格式转换为日期
to_char(d,m) -- 日期以指定格式转换为字符串
二、组函数
组函数|多行函数|聚合函数 即多条记录 返回一个结果。
我们需要掌握如下几个组函数:avg 、sum、 min、 max、 count
1)、count :统计记录数 count() -->* 或一个列名
2)、max min: 最大值 最小值
3)、sum:求和
4)、avg:平均值
注意:
1、组函数仅在选择列表和Having子句中有效
2、出现组函数,select 只能有组函数或分组字段
三、分组与过滤组信息
分组: group by , 将符合条件的记录 进一步的分组
过滤组:having , 过滤组信息 ,表达式 同 where 一致
group by :分组
1)、select 出现分组函数,就不能使用 非分组信息,可以使用 group by 字段
2)、group by字段 可以不出现 select 中 ,反之select 除组函数外的,其他字段必
须出现在group by 中
过滤组having :
where :过滤行记录,不能使用组函数, having:过滤组 可以使用组函数