sql常用函数介绍

本文详细介绍了Oracle数据库中单行函数的使用,包括字符函数(如LOWER,UPPER,CONCAT),数值函数(如ROUND,TRUNC)和日期函数(如SYSDATE,MONTHS_BETWEEN)。此外,还讲解了转换函数如TO_CHAR,TO_DATE和TO_NUMBER的作用,以及通用函数如NVL和DECODE的功能。文章通过实例展示了如何在SQL查询中应用这些函数,帮助读者理解和掌握这些基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

单行函数

/*

1、简介

1)可以把函数看出是一个具有特点功能的代码块

2)每个函数都有自己的用法(返回值,参数)

3)此时使用的都是系统函数(不需要创建,直接使用) 自定义函数(FUNCTION)

2、函数的分类

单行函数:输入的参数和返回值 都是单行

多行函数:输入的参数是多行,返回值单行

3、单行函数特点

1)只对一行进行变换

2)每行返回一个结果

4、常见的单行函数

1)字符函数

2)数值函数

3)日期函数

4)转换函数

5)通用函数

*/

SELECT employee_id,last_name,UPPER('abcd') FROM employees;
SELECT MAX(salary) FROM employees;

字符函数

/*

函数的参数是一个字符类型 VARCHAR2 CHAR

常用的字符函数:

LOWER :转为小写字母
UPPER :转为大写字母
INITCAP :每个单词的首字母大写,空格下划线默认分隔单词
CONCAT :连接字符串 和 ||功能一样
SUBSTR :截取字符串
LENGTH :长度
INSTR :查找某个字符出现的位置
LPAD|RPAD :左填充 |又填充
TRIM :去除前后空格
REPLACE :替换

注意

1)记住常用的函数大概的含义

2)学会看语法

3)查看帮助文档

4)区分参数和返回值的含义

编程两大神奇:CV大法 面向百度编程

*/

SELECT employee_id,last_name,salary,REPLACE('hello oracle!','hello','你好')
FROM employees;
DUAL:虚拟表,该表本身没有任何数据,只是为了满足ORACLE查询语法
select replace('he love you','he','i') test from dual;

-- 大小写

SELECT 
   employee_id,
   last_name,
   salary,
   UPPER(last_name) upp,
   LOWER(last_name) low,
   INITCAP('he love you'),
   CONCAT(first_name,last_name) con
FROM employees;

-- SUBSTR:截取字符串

-- 参数1:表示需要截取的字符串

-- 参数2:表示需要从哪个位置截取

-- 参数3:可选,表示需要截取的个数,如果不指定,截取到末尾

-- 返回值:截取具体的字符串

SELECT 
   employee_id,
   last_name,
   salary,
   SUBSTR(last_name,2,3) sub,
   LENGTH(last_name) len
FROM employees;

-- 查找员工的名称 长度为5的信息

SELECT * 
FROM  employees
WHERE length(last_name) = 5;

-- INSTR:查找字符串出现的位置

-- 参数1:需要查找的原字符

-- 参数2:需要查询指定的字符

-- 参数3:可选,表示从哪里开始找 默认是0开始

-- 参数4:可选,查找的是第几次出现的值,默认查询第1次出现的值

SELECT 
   employee_id,
   last_name,
   salary,
   INSTR(last_name,'a') ins,
   INSTR('hello oracle,hello hadoop!','o',10,3) xx
FROM employees;

-- LPAD|RPAD填充

SELECT 
   employee_id,
   last_name,
   salary,
   LPAD(last_name,6,'*') lp,
   RPAD(last_name,6,'*') rp
FROM employees;

-- TRIM :默认是去除前后空格,中间的空格不去去掉

SELECT 
   employee_id,
   last_name,
   ' HELLO WORLD ',
   TRIM(' HELLO WORLD '),
   TRIM('H' FROM 'HELLO WORLD,Hello Oracle!HH') HH
FROM employees;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值