- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
函数表达式doc
函数表达式:
2. 多行函数 多条记录返回一个结果
也称为: 组函数、聚集函数
sum() 求总和
avg() 平均值
count() 统计记录的条数
max() 求最大值
min() 求最小值
1. 单行函数: 根据处理的不同的数据类型进行分类:
2. (1) 字符处理函数 char varchar2 varchar
Oracle函数 Java方法
length() 字符串长度 length()
lower() 大写变小写 toLowerCase()
upper() 小写变大写 toUpperCase()
substr() 求子串 substring()
例子1: 查询出42部门的员工的名字(原样,全小写,全大写)
select first_name, lower(first_name),upper(first_name) from s_emp where dept_id=42;
经常借助于虚表dual进行函数的测试: 单行单列 算一次
select lower(ABC)from dual;
例子2:找出每条记录first_name最后两个字符
Mark rk
Carman an
思路: 使用函数substr()求子串
解法一: 第一个参数: 处理的字段名
第二个参数: 正数 表示从正数标号开始 起始1 (数据库从1开始, java从0开始)
第三个参数: 表示取几个字符
select first_name, substr(first_name,length(first_name)-1 ,2) from s_emp;
说明: 函数可以嵌套调用
解法二: 第一个参数: 处理的字段名
第二个参数: 负数 表示从倒数的第几个开始
第三个参数: 表示取几个
select first_name, substr(first_name,-2 ,2)
from s_emp;
(2)数值处理函数 number
round 四舍五入 select round(45.926,-1) from dual; --50
trunc 截取 正数表示保留小数点后几位,负数表示截取小数点前几位
select trunc (45.926,-1) from dual; --40
例子3: select round(45.926,2) from dual;
ROUND(45.926,2)
---------------
45.93 保留小数点后两位 四舍五入
(3) 日期处理函数 date
日期类型 date 保存一个时刻 时间点
底层存储: 是一个长整数 Java: long 毫秒数
从1979年1月1日0点 到 某个时间点的毫秒数
Unix发布的时间
日期类型存储的信息: 世纪、年、月、日、时、分、秒
常用的日期格式:
标准的日期格式: yyyy mm dd hh24:mi:ss
yyyy–mm-dd hh24:mi:ss
默认格式: DD-MON-RR
日 月 年
如果是英文环境: 01-JAN-13
中文环境: 01-1月-13 (目前本地环境)
如何查看当前系统的时间? sysdate
select sysdate from dual;
如何修改当前日期格式? 可以改变会话Session
改变会话session,将日期格式修改为标准格式:
alter session
set nls_date_format=’yyyy-mm-dd hh24:mi:ss’;
日期的运算:
加 或 减 1 单位: 天
select sysdate-1,sysdate,sysdate+1
from dual;
练习: 求出当前时间10分钟以后的时间
分析: 1/24/60 1/144
可读性好
select sysdate,sysdate+1/24/60“10分钟以后”from dual;
例题4: 查找出员工的入职日期
思路: s_emp表 first_name start_date
select first_name,start_date from s_emp;
-------------------------------------------------------
文档评论(0)