oracle

来源:互联网 发布:分水岭算法的大米图 编辑:程序博客网 时间:2024/06/04 01:33

oracle

基本查询

dual的虚拟表   

起别名的规则 特殊字符和空格加双引号   #$除外

null的计算

字符的拼接  concat的函数 oracle特有字符 ||


条件查询

where关键字 跟查询条件

比较运算  > < > >= <= != <>

逻辑运算 and  or not

其他运算

in not  in  判断范围 范围内可以为一个

like 模糊查询 % 匹配多个或者0个

_ 下划线 占位一个字符

between and  判断区间使用 -- 包涵边界

is null is not null 判断是否为空

排序 注意空值 使用 nulls last 


单行函数

数值函数  字符函数 日期函数 转换函数 通用函数  条件表达式 decode

影响单行的记录纸  例如nvl()


多行函数  聚合函数 

多条记录参与运算  返回结果是一条记录

sum 求和      avg  求平均数   count  求记录书   max  最大值   min  最小值

数值函数 

四舍五入    round(v1 ,v2)  v1 计算的数值   v2  保留的小数位数

截取    trunc(v1, v2)  v1计算的数值  v2保留的小数位数   不做四舍五入

取模    mod(v1,v2) v1计算的数值   v2 模数  10%3  =1


字符函数 

substr(v1,v2,v3)  截取字符串  v1原始字符串 v2开始截取位数  v3 截取的长度

upper()转换大写

lower() 转换小写

length()获取字符串的长度

replace(v1,v2,v3)v1原始字符串 v2被替换字符 v3 替换后字符


日期函数:

sysdate 获取系统事件 

add_months  给系统事件增加月份

moths_between(v1,v2)  计算两个日期之间的月数   v1 v2 v3  都是日期格式


转换函数

转换字符  to_char(v1,v2) v1被转换的值, v2 转换格式

转换日期  to_date(v1,v2) v1 被转换字符  v2日期格式

转换数值 to_number()


通用函数

nvl(v1,v2) 判断v1如果为空 返回v2   不为空 返回v1

concat(v1,v2)  两个值的拼接 如果不为空 返回v2 如果为空 返回v1

     nvl2(v1,v2,v3)v1判断的值 如果不为空 返回v2 如果为空 返回v3 


排序的关键字

 order by 列 asc 正序 desc 倒序 


分组函数

group by  列

分组后过滤记录使用having

分组之前过滤用where


group by

如果使用rgroup by 那么只能查询聚合函数和group by的列

select 中出现普通的列  如果使用使用group by 那么普通的列必须出现在group后面


条件表达式

if...处理语句

else..if 处理语句

else  所用sql数据通用的表达式

case列 

 when 值 then 显示值

when 值 then 显示值

when 值 then 显示值

else

end


原创粉丝点击