热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

ORACLE常用SQL函数

oracle中函数分为:字符类函数、数类函数、日期类函数、空处理函数、转换类函数、其他常用函数这次主要整理几个ORACLE中常用到的SQL函数如下:lower()函数内容转换小写SQLSELECTLOWER(T_NAME)FROMtest_partitioning2;LOWER(T_NAME)------------

oracle中函数分为:字符类函数、数类函数、日期类函数、空处理函数、转换类函数、其他常用函数 这次主要整理几个ORACLE中常用到的SQL函数 如下: lower()函数 内容转换小写 SQL SELECT LOWER(T_NAME) FROM test_partitioning2; LOWER(T_NAME) ------------

oracle中函数分为:字符类函数、数值类函数、日期类函数、空值处理函数、转换类函数、其他常用函数

这次主要整理几个ORACLE中常用到的SQL函数 如下:

lower()函数 内容转换小写
SQL> SELECT LOWER(T_NAME) FROM test_partitioning2;
LOWER(T_NAME)
-------------
a
b
c
d
e
e
e
7 rows selected

upper()函数 内容抓换大写
SQL> SELECT UPPER(T_NAME) FROM test_partitioning2;
UPPER(T_NAME)
-------------
A
B
C
D
E
E
E
7 rows selected

ltrim()去除左右空格(前后各两空格)

SQL> select length(ltrim(' oracle ')),length(ltrim(' oracle ',' ')) from dual;
LENGTH(LTRIM('ORACLE')) LENGTH(LTRIM('ORACLE',''))
----------------------- --------------------------
8 8
--ltrim中第二个参数没有指定参数,默认删除' '空格的字符,即与ltrim(' oracle ',' ')效果相同;

ltrim删除字符串中指定字符
SQL> select ltrim('oracle','roc'),ltrim('lllearner','ale') from dual;
LTRIM('ORACLE','ROC') LTRIM('LLLEARNER','ALE')
--------------------- ------------------------
acle rner
--ltrim函数第二个参数不是以‘roc’作为整体删除的,而是以单个字符删除。碰到连续的字符将连续删除。

rtrim()去除左右空格(前后各两空格)

SQL> select length(rtrim(' oracle ')),length(rtrim(' oracle ',' ')) from dual;
LENGTH(RTRIM('ORACLE')) LENGTH(RTRIM('ORACLE',''))
----------------------- --------------------------
8 8
SQL> select rtrim('oracle','e'),rtrim('learner','rle') from dual;
RTRIM('ORACLE','E') RTRIM('LEARNER','RLE')
------------------- ----------------------
oracl learn
--作用同ltrim函数一样,只不过这是从右边往左边检索删除

trim()函数包括了ltrim()、rtrim()函数功能
语法:TRIM([LEADING | TRAILING| BOTH] [trim_char_from] 列明或表达式)
LEADING:表示从左边删除
TRAILING:右边删除
BOTH:两边同时删除(默认)
例子:
SQL> SELECT TRIM(LEADING '*' FROM '**oracle*') c1,TRIM(TRAILING '*' FROM '**oracle*') c2,TRIM(BOTH '*' FROM '**oracle*') c3,
2 TRIM('*' FROM '**oracle*') c4,LENGTH(TRIM(' oracle')) c5 from dual
3 ;
C1 C2 C3 C4 C5
------- -------- ------ ------ ----------
oracle* **oracle oracle oracle 6

length()与lengthb() 函数
两者都是返回长度,前者返回字符串长度,后者返回字节长度
SQL> select length('数据库'),lengthb('数据库') from dual;
LENGTH('数据库') LENGTHB('数据库')
---------------- -----------------
3 9

substr()与substrb() 函数

两个都是返回字符串的字串,后者按照字符返回


SQL> select substr('oracle',1,3) c1,substr('oracle',1,3) c2,substr('学习数据库',1,3) c3,substrb('学习数据库',1,3) from dual;
C1 C2 C3 SUBSTRB('学习数据库',1,3)
--- --- --------- -------------------------
ora ora 学习数 学

round()函数

功能将列明所表示的数值进行四舍五入,语法格式
ROUND(列明,X) X表示保留几个小数,不写默认为0,小数点后面四舍五入
例子:
SQL> select round(123.456) from dual;
--------------
123
SQL> select round(123.456) from dual;
ROUND(123.456)
--------------
123
--round()函数还可以对日期类型数据进行处理

TRUNC()函数

功能:将列名所表示的数值进行截取,语法如下:
TRUNC(列名,x) x表示截取到小数点的第几位(不进行四舍五入),默认为0,如果x为负数,则表示从小数点左边第x位截取
SQL> select trunc(123456.78) from dual;
TRUNC(123456.78)
----------------
123456
SQL> select trunc(123456.78,1) from dual;
TRUNC(123456.78,1)
------------------
123456.7

--trunc第二个参数为负数,表示从小数点左边截断,截断几位自动补0。 如下:
SQL> select trunc(1234.567,-1) A,trunc(123456.789,-2) B,trunc(3456332.1,-4) C from dual;
A B C
---------- ---------- ----------
1230 123400 3450000
--trunc函数也还可以对日期类型数据进行处理
--trunc与round不同,round是小数点后面进行四舍五入,而trunc直接截断,这是两函数区别。

last_day()函数

功能:获取当前日期所在月的最后一天
SQL> select sysdate,last_day(sysdate) last_day from dual;
SYSDATE LAST_DAY
----------- -----------
2013/10/20 2013/10/31

NVL()函数

功能:实现空值转换,根据一个表达式的值是否为空来判断返回相应列明或表达式。主要用于对空值进行处理,语法如下:
NVL(列名或表达式,列名或表达式)
如果第一个参数值返回空值,则返回第二个参数值,否则返回第一个参数值,第一第二参数值都可为任意类型值,但两个参数类型必须相同。

NVL2()函数NVL()函数扩展函数

功能也是对一个空值转换函数,如果第一个参数值不为空,则返回第二个参数值,否则返回第三个参数值。第一个参数可以为任意类型,


第二第三参数除LONG类型以外的任何类型。语法如下:
NVL2(列名或表达式,列名或表达式,列名或表达式)

TO_CHAR()函数

功能:将非字符数据转换为字符型数据,并设置字符的输出格式,语法如下:
TO_CHAR(列名或表达式,[格式],[NLS参数])
第一个参数:要指定转换列名
第二个参数:转换列名指定转换格式
第三个参数:显示格式国家语言支持参数,如不设置则使用默认NLS参数指定
SQL> SELECT TO_CHAR(1234567,'9,999,999') C1,TO_CHAR(123.456,'9999,9999') C2,TO_CHAR(12.466666,'9.99') C5 from dual;
C1 C2 C5
---------- ---------- -----
1,234,567 123 #####

#####:表示当整数部分的长度大于格式字符串中指定的长度时,则返回一个由#组成字符串

SQL> select to_char(systimestamp,'YYYY-MM-DD hh24:MI:SS') d1, to_char(systimestamp,'WW') d2,to_char(sysdate,'W') d3 from dual;
D1 D2 D3
------------------- -- --
2013-10-20 20:56:58 42 3

TO_DATE(函数

功能:将字符型数据转换成日期型数据,并设置日期的输出格式,语法如下:
TO_CHAR(列名或表达式,[格式]),[NLS参数]
第一个参数:转换列名
第二个参数:指定转换后显示格式
第三个参数:显示格式国家语言支持参数,如不设置则使用默认NLS参数指定
SQL> select to_char(to_date('2013-10-20','yyyy-mm-dd'),'DAY') from dual;
TO_CHAR(TO_DATE('2013-10-20','
------------------------------
星期日

DECODE() 函数
功能:类似与高级语言中IF ELSE的分支语句
SELECT T_ID,T_NAME,T_RESEARCH,DECODE(T_TITLEID,1,'教授',2,'副教授',3,'其他') from dual;

推荐阅读
  • 本周,我深入研究了 ECharts 插件的使用方法,整体感觉插件操作较为简便,但后台算法较为复杂。此外,我还学习了 MySQL 函数的新应用,进一步提升了数据库操作的灵活性。同时,分享了自己在 Python 书籍外借过程中的体验,总结了一些实用的借阅技巧和心得。 ... [详细]
  • 如何在Android项目中正确导入和配置MySQL数据库驱动 ... [详细]
  • Norton Partition Magic 中 PHP 函数 error_reporting(E_ALL ^ E_NOTICE) 的详细解析与应用
    在 Windows 环境下,通过具体示例分析了 `Norton Partition Magic` 中 `PHP` 函数 `error_reporting(E_ALL ^ E_NOTICE)` 的详细解析与应用。该函数用于控制错误报告级别,例如在从 PHP 4.3.0 升级到 4.3.1 后,程序出现多处错误的原因及解决方法。本文深入探讨了错误报告配置对程序稳定性的影响,并提供了实用的调试技巧。 ... [详细]
  • 本文深入探讨了ASP.NET中ViewState、Cookie和Session三种状态管理技术的区别与应用场景。ViewState主要用于保存页面控件的状态信息,确保在多次往返服务器过程中数据的一致性;Cookie则存储在客户端,适用于保存少量用户偏好设置等非敏感信息;而Session则在服务器端存储数据,适合处理需要跨页面保持的数据。文章详细分析了这三种技术的工作原理及其优缺点,并提供了实际应用中的最佳实践建议。 ... [详细]
  • Python与R语言在功能和应用场景上各有优势。尽管R语言在统计分析和数据可视化方面具有更强的专业性,但Python作为一种通用编程语言,适用于更广泛的领域,包括Web开发、自动化脚本和机器学习等。对于初学者而言,Python的学习曲线更为平缓,上手更加容易。此外,Python拥有庞大的社区支持和丰富的第三方库,使其在实际应用中更具灵活性和扩展性。 ... [详细]
  • SQL Server开发技巧:修改表结构后的视图批量更新方法与实践 ... [详细]
  • SQLSharper 2014 是一款专为 SQL Server Management Studio (SSMS) 设计的功能增强插件,旨在提升 T-SQL 开发者的效率。该插件提供了多种实用工具,包括快速查询数据库对象、详细查看表结构、优化查询结果导出以及自动生成代码等。适用于需要高效管理和开发 SQL 数据库的专业人士。 ... [详细]
  • 如何在Oracle ASM_Diskgroup中重命名现有磁盘
    如何在Oracle ASM_Diskgroup中重命名现有磁盘 ... [详细]
  • 基于Java和JSP的电子医疗记录管理平台
    随着信息技术的快速发展,各类管理系统已在各行各业得到广泛应用。传统的人工管理模式已逐渐无法满足现代需求。本文介绍了一种基于Java和JSP技术开发的电子医疗记录管理平台,旨在提高医疗行业的信息化水平和管理效率。该平台通过整合先进的数据库技术和Web开发框架,实现了医疗记录的高效存储、查询和管理,为医护人员提供了便捷的操作界面和强大的数据支持。 ... [详细]
  • 在数据库管理中,计算字段(也称为计算列)是一种重要的技术手段。计算字段通过在表定义中使用表达式或函数,自动生成并存储计算结果,从而提高查询效率和数据一致性。本文将详细介绍计算字段的创建方法、优化技巧及其在实际应用中的案例,帮助读者更好地理解和运用这一功能。 ... [详细]
  • 在探讨如何高效处理大规模数据报表的分页展示之前,首先需要明确导致报表加载缓慢的主要原因。通常情况下,这主要是由于两个方面:一是查询条件过于宽泛,使得数据库返回的结果集包含数百万甚至更多的记录;二是前端渲染性能不足,无法高效处理大量数据。为了优化这一过程,可以从以下几个方面入手:优化查询条件,减少不必要的数据返回;采用分页查询技术,每次仅加载所需的数据;利用缓存机制,减少对数据库的频繁访问;提升前端渲染效率,使用虚拟滚动等技术提高用户体验。 ... [详细]
  • 最近,我在CentOS 5服务器上成功部署了GForge 5.7 Community Edition。与Advanced Server版本相比,虽然功能略有简化,但仍然能够满足大多数开源项目管理的需求。为了确保数据安全,我开发了一套全自动备份脚本,该脚本能够定期备份GForge的数据和配置文件,并将其存储在远程服务器上,以防止数据丢失。此外,该脚本还具备错误检测和日志记录功能,便于故障排查和维护。 ... [详细]
  • 在CentOS上部署和配置FreeSWITCH
    在CentOS系统上部署和配置FreeSWITCH的过程涉及多个步骤。本文详细介绍了从源代码安装FreeSWITCH的方法,包括必要的依赖项安装、编译和配置过程。此外,还提供了常见的配置选项和故障排除技巧,帮助用户顺利完成部署并确保系统的稳定运行。 ... [详细]
  • Issue with the Reserved Term HOSTS in System Configuration ... [详细]
  • 在开发系统查询搜索功能时,需注意以下几点以提高信息检索效率:首先,在SQL语句中,每个参数占位符“?”后必须紧跟相应的参数赋值,确保参数与赋值一一对应,避免因参数不匹配导致的错误。其次,进行模糊搜索时,若用户输入通配符“%”,可能会导致全表扫描,因此需要对输入的“%”进行特殊处理或限制,以防止不必要的性能开销。此外,建议使用索引优化查询速度,并合理设计搜索逻辑,以提升用户体验。 ... [详细]
author-avatar
yk_ao
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有