Oracle-查询之函数
DQL语句:查询语句用于查询表中数据
DQL必须包含的两个部分:select 子句 和from 子句
select子句:指定要查询的内容,可以指定表中的具体字段,*号,函数,或者表达式from子句:指定数据来源的表
DQL中使用where子句可以添加过滤条件,来检索只符合过滤条件的记录。
字符串函数:1.CONCAT(C1,C2):连接字符串C1和C2
"||"也可以用来连接多个字符串
2.LENGTH(C):查看指定字符串的长度
3.UPPER,LOWER,INITCAPI 将指定的字符转换为全大写,全小写,以及首字母大写
initcap中的字符串可以使用空格分割多个单词,这样每个单词的首字母都大写。当查询的数据不与任何表数据有关系时,可以查询伪表dual
4:TRIM,LTRIM,RTRIM 去除字符串两边,左边,右边指定重复字符
LTRIM,RTRIM在删除字符时,只有左边(右边)的每个字符时第二个参数字符串中任意一个字符就去除
5.LPAD,RPAD 补位函数 LPAD(C1,N,C2):将c1显示n伪长度,若c1不足n位,则左侧补充若干个c2字符,以达到n位长度,若超过,则左侧开始截取c1为n位长度并返回
6.SUBSTR(C,M[,N])截取字符串c,从第m个字符开始,连续截取n个字符,若n不指定则是攫取到字符串末尾,若n超过实际可截取的字符串个数也是攫取到字符串末尾,数据库中下标是从1开始的
7.INSTR(CHAR1,CHAR2[,N[,M]]):查找cahr2在char1中的位置,n从第几个字符开始检索,不写默认为1,m查找第几次出现,不谢默认为1
数值函数 1.ROUND对n进行四舍五入,保留小数点后m位,若m不指定则默认为0,0表示保留整数位,若m为负数,则小数点前十位以上数字,-1表示保留十位。。。
2.TRUNC(N[,M]) 不四舍五入直接截取
3.MOD(M,N) 求余数,规则为m除以n 若n为0 则函数直接返回m
4.CEIL,FLOOR 向上取整,向下取整
日期相关关键字
SYSDATE,SYSTIMESTAMP他们对应ORACLE内部的函数库,返回一个当前系统时间,不同的在于一个返回date类型,另一个返回时间戳类型
日期转换函数
1.TO_DATE()将一个字符串按照给定的日期格式解析为一个date类型数据
DATE类型数据可以计算:两个date类型时间相减,差为相差天数,对一个date加减一个数字等于加减了天数,日期之间可以比较大小,越晚越大。
在日期格式字符串中出现字母符号除外的其他字符都需要使用双引号括起来
2.TO_CHAR() 可以将日期转换为字符串,TO_CHAR()函数实际上可以将其他类型转换为字符串,常用得是将日期转换为字符串
日期格式中的YY,RR的区别,都是用两位数字表示年,他们在使用TO_DATE函数将一个字符串中2位数字的面解释为实际的年时对世纪的处理方式不同,YY是根据当前系统多在世纪来解释世纪的,RR则根据具体情况判定
日期常用函数:
1.LASE_DATE(DATE)返回给定日期所在月的月底日期
2.ADD_MONTHS(DATE,I)给指定日期加上指定的月,若为负数则减去指定月
3.MONTHS_BETWEEN(DATE1,DATE2)计算两个日期之间相差月份
4.NEXT_DAY(DATE,I) 返回给定日期第二天开始一周之内的指定周几的日期
5.LEASE,GREATEST 求最小值与最大值,在日期中使用则是求最早的日期与最晚的日期
6.EXTRACT获取指定日期对应的时间分量
判断是否null使用is null 或者is not null
null的运算:null与字符串连接等于什么也没做,null与数字计算,结果还是null
空值函数 NVL(A1,A2)当a1位null时函数返回a2的值,若a1不为null函数返回a1本身,所以NVL函数的意义是null值替换为非null值
NVL2(A1,A2,A3)当a1不为null返回a2,当a1为null时返回a3
我是初学者,如有更新不好的,欢迎这位大神指出,谢谢大家!
更多精彩以后更新,转载注明!
Oracle-查询之函数的更多相关文章
- 【转】oracle查询用户表,函数,储存过程,
◆Oracle查询用户表空间:select * from user_all_tables ◆Oracle查询所有函数和储存过程:select * from user_source ◆Oracle查询所 ...
- oracle查询所有用户表的表名、主键名称、索引、外键等
1.查找表的所有索引(包括索引名,类型,构成列): select t.*,i.index_type from user_ind_columns t,user_indexes i where t.ind ...
- Oracle中关于处理小数点位数的几个函数,取小数位数,Oracle查询函数
Oracle中关于处理小数点位数的几个函数,取小数位数,Oracle查询函数 关于处理小数点位数的几个oracle函数()1. 取四舍五入的几位小数select round(1.2345, 3) fr ...
- 使用Oracle的instr函数与索引配合提高模糊查询的效率
使用Oracle的instr函数与索引配合提高模糊查询的效率 一般来说,在Oracle数据库中,我们对tb表的name字段进行模糊查询会采用下面两种方式:1.select * from tb wher ...
- Oracle查询部门工资最高员工的两种方法 1、MAX()函数 2、RANK()函数
本文以SCOTT用户下初始的EMP表为参考.代码可直接使用. 查询EMP表结构的语句如下,[代码1]: DESC EMP; EMP表结构如下:[结果1]: SQL> DESC EMP ...
- Oracle列转行函数Listagg以及pivot查询示例
简单的Oracle列转行函数Listagg示例: CREATE TABLE tbl_test (catalog VARCHAR(1),product VARCHAR(2),amount NUMBER) ...
- Oracle 中 decode 函数用法
Oracle 中 decode 函数用法 含义解释:decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义如下:IF 条件=值1 THEN RETURN(翻译 ...
- Oracle查询和问题简记
现在做两个版本的系统,一个用的数据库是Access,另一个就是Oracle了.每个数据库支持的的查询SQL语句都有所区别,这里主要针对Access和Oracle做 记录. 首先贴出遇到问题最多的一条语 ...
- 45 个非常有用的 Oracle 查询语句
这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快 ...
- Oracle nvl(),nvl2()函数介绍
NVL函数 Oracle/PLSQL中的一个函数. 格式为: NVL( string1, replace_with) 功能:如果string1为NULL,则NVL函数返回replace_with的值, ...
随机推荐
- camunda开源版与商业版的差异
Camunda流程引擎分社区版和企业版,社区版实际上是开源版,是Apache2.0协议,企业版实际上是商业收费版本,需要购买授权才能使用,那么社区版和企业版的差异有哪些呢,社区版本是否能满足我们日常的 ...
- LVGL库入门教程04-样式
LVGL样式 LVGL样式概述 创建样式 在 LVGL 中,样式都是以对象的方式存在,一个对象可以描述一种样式.每个控件都可以独立添加样式,创建的样式之间互不影响. 可以使用 lv_style_t 类 ...
- 关于使用koa 跨域问题你可能会遇到
var cors = require('koa2-cors');// 跨域const allowOrigins = ["http://localhost:8080" // 需要跨域 ...
- 安装@parcel/transformer-image注意的问题
安装前配置 npm config get cache 键入以上命令即可找到npm缓存路径,然后找到路径下的_libvips文件夹. 一般需要以下两个文件,这里以win环境为例.把文件放到_libvip ...
- SAP Web Dynpro - 个性化和配置
根据业务需求,您可以实现许多标准应用程序,并且Web Dynpro应用程序的UI可以根据要求而有所不同. 应用配置 要配置Web Dynpro应用程序,首先要为单个Web Dynpro组件配置数据记录 ...
- Python列表解析式的正确使用方式
先来逼逼两句: Python 是一种极其多样化和强大的编程语言!当需要解决一个问题时,它有着不同的方法.在本文中,将会展示列表解析式 (List Comprehension).我们将讨论如何使用它?什 ...
- docker的平替--podman
前言 我们都知道,docker这个东西,是CaaS(Container as a Service,容器即服务)的通常解法.我们使用docker来管理容器的生命周期,比如镜像的生成.容器的管理和定制(D ...
- 这么强?!Erda MySQL Migrator:持续集成的数据库版本控制
为什么要进行数据库版本控制? 现代软件工程逐渐向持续集成.持续交付演进,软件一次性交付了事的场景逐渐无法满足复杂多变的业务需求,"如何高效地进行软件版本控制"成为我们面临的挑战.同 ...
- chrome请求cgi遇到net::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK)
测试一个web demo的时候,通过chrome请求板子上的web server的cgi时总是提示:net::ERR_INCOMPLETE_CHUNKED_ENCODING 200 (OK) 搜遍整个 ...
- 今天安装了eclipse,myeclipse,满满的回忆
代码半生,编码半世,ideacode失效,安装了eclipse,那熟悉的界面,俨然又回到了从前,当初我们还在用structs,eclipse,webwork,那时候还在用jbuilder,但是算是老套 ...