Oracle排序,伪列,字符函数,数字函数,日期行数

2024-03-09 22:32

本文主要是介绍Oracle排序,伪列,字符函数,数字函数,日期行数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一  ORACle的排序 

      排序语句: 

       SELECT [DISTINCT] * | [列名 [别名],…] 

         FROM 表名 

        WHERE 条件 

        ORDER BY 排序的列 [ASC | DESC],…; 

       select * from emp order by hiredate desc   ( desc表示降序 从大到小 asc 表示升序) 

       select * from emp where where job='MANAGER' order by  hiredate desc; (按条件查询出结果后排序) 

       select * from mep order by hiredate desc,sal desc (按条件一升序后 相同的条件一在进行条件二排序) 

二 Oracle的伪列 

      ROWID 是表中每一条记录的唯一标识符,数据库内部使用它来存储行的物理地址。 

       该地址可以唯一地标识数据库中的一行,可以使用 ROWID 伪列快速地定位表中的某一行。 

       无法使用update语句修改 

     ROWNUM 是SQL查询返回的结果集中每一行的行号。 

       可以用它来限制查询返回的行数。 

       ROWNUM是先查到结果集之后再加上去的一个列 。 

         在oracle中使用rownum来进行分页 

         select t.* ,rownum as rn from emp where rownum>=10 and rownum<=20这是错误的 

         因为行的循环查找 从索引1 开始  第一条记录的索引为1  不满足 循环第二条时 记录索引从1 开始 。。。。所以的行的行号都是1 永远不满足 

           select * from (select t.*,rownum as rn from emp t) where rn>=10 and rn<=20 这是正确的  (一般使用) 

                  分页另一种写法 

           select * from (select t.*,rownum as rn from emp t where rownum<=20) where rn>=10 正确的 

         select * from emp where rownum<=10 这是正确 

        记录:rownum大于1的记录永远不可能成立  rownum<等于任何值都成立 

三  oracle的单行函数 

      字符串函数 

      lower(n) 将字符转换成小写         

         select lower('AAAA') from dual;  --aaaa 

         select lower(ename) from emp;    --列输出结果全部小写 

      upper(n) 将字符串转换成大写 

      replace(列名,被替换的字符串,替换的字符串) 

          select ename,replace(job,'MANAGER','经理')  from emp; --job列中 所有的MANAGER都被替换成了经理 

          select replace('AAAtestgggg','test','测试') from dual; --AAA测试gggg 

      instr(列名,被搜索的字符串) 

          select instr('AAAtestgggg','test') from dual; --4 索引从1开始 

      substr(列名,开始位置,总长度) 

          select instr('AAAtestgggg',4,3) from dual; --tes 


      concat(参数1,参数2) 

          select concat('a','b') from dual;  --- ab  等价于 'a'||'b'   

      length(列名) 获取字符的长度 

      trim(列名) 去空格  

          ltrim 去左侧的空格 

          rtrim 去右侧的空格 
 
         nvl(列名,值) 当列的值为空时 输入第二参数的值 如果不为空 输出当前列的值 

         nvl2(列名,值1,值2) 当列的值为空时 输出第二个参数的值 如果不为空输出第三个参数的值 

         decode(列名,条件1,值1,条件2,值2......,条件n,值n) 当列的值等于条件n时输出值n 

    数字函数            

      mod(5,2) 取余数 等价于java 5%2 

      round(n) 对整数位进行四舍五入 满5进1 

      round(n,p) 对小数位进行四舍五入 比如 round(5.6767,2) 输出为5.68 

      trunc(n) 截断小数位 只保留整数位 

     trunc(n,p) 截断小数位意外的位数 比如 trunc(5.666,2) 输出为5.66 就是保留p位小数 


    日期函数            

      sysdate 获取系统的当前时间  

      add_months(日期,月数) 将日期加上月数 并返回  比如 (sysdate=2016-3-3)+5个月 =2016-8-3 

      select sysdate+天数 from dual 将当前日期加上某个数字 表示+天数 

      months_between(日期1,日期2)  比较日期1和日期2的相差的月份数  结果=日期1-日期2 

      last_day(日期) 返回日期对应月份的最后一天 

      round(日期,格式) 

            YEAR 获取当年的第一天 

            MONTH 获取当月的第一天 

            DAY 获取 第一个周末的第一天 

      next_day(日期,第几天) 获取当前日期下一个星期的第几天 
 


             
 


 


   




 

这篇关于Oracle排序,伪列,字符函数,数字函数,日期行数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/792153

相关文章

Python中help()和dir()函数的使用

《Python中help()和dir()函数的使用》我们经常需要查看某个对象(如模块、类、函数等)的属性和方法,Python提供了两个内置函数help()和dir(),它们可以帮助我们快速了解代... 目录1. 引言2. help() 函数2.1 作用2.2 使用方法2.3 示例(1) 查看内置函数的帮助(

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

C#如何去掉文件夹或文件名非法字符

《C#如何去掉文件夹或文件名非法字符》:本文主要介绍C#如何去掉文件夹或文件名非法字符的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#去掉文件夹或文件名非法字符net类库提供了非法字符的数组这里还有个小窍门总结C#去掉文件夹或文件名非法字符实现有输入字

Java日期类详解(最新推荐)

《Java日期类详解(最新推荐)》早期版本主要使用java.util.Date、java.util.Calendar等类,Java8及以后引入了新的日期和时间API(JSR310),包含在ja... 目录旧的日期时间API新的日期时间 API(Java 8+)获取时间戳时间计算与其他日期时间类型的转换Dur

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

Python中bisect_left 函数实现高效插入与有序列表管理

《Python中bisect_left函数实现高效插入与有序列表管理》Python的bisect_left函数通过二分查找高效定位有序列表插入位置,与bisect_right的区别在于处理重复元素时... 目录一、bisect_left 基本介绍1.1 函数定义1.2 核心功能二、bisect_left 与

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.

C++/类与对象/默认成员函数@构造函数的用法

《C++/类与对象/默认成员函数@构造函数的用法》:本文主要介绍C++/类与对象/默认成员函数@构造函数的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录名词概念默认成员函数构造函数概念函数特征显示构造函数隐式构造函数总结名词概念默认构造函数:不用传参就可以

C++类和对象之默认成员函数的使用解读

《C++类和对象之默认成员函数的使用解读》:本文主要介绍C++类和对象之默认成员函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、默认成员函数有哪些二、各默认成员函数详解默认构造函数析构函数拷贝构造函数拷贝赋值运算符三、默认成员函数的注意事项总结一

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使