我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Oracle数据库中通用的函数是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Oracle数据库中通用的函数是什么

这篇文章主要为大家展示了“Oracle数据库中通用的函数是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle数据库中通用的函数是什么”这篇文章吧。

    一、 Scott用户下的表结构

    SCOTT。是在Oracle数据库中,一个示例用户的名称。其作用是为初学者提供一些简单的应用示例,不过其默认是锁定状态,在安装时,根据用户需要,在“数据库配置助手”界面完成后,弹出的对话框中--口令管理,里面解锁。

    SCOTT是ORACLE内部的一个示例用户,缺省口令为tiger,下面有表emp, dept等,这些表和表间的关系演示了关系型数据库的一些基本原理

    Oracle数据库中通用的函数是什么

    1、如果自己没有Scoot表就可以自己创建一个

    (1)创建DEPT表

    CREATE  TABLE  DEPT  (DEPTNO  NUMBER(2)  CONSTRAINT  PK_DEPT   PRIMARY KEY,DNAME  VARCHAR2(14) ,  LOC  VARCHAR2(13) ) ;

    (2)表DEPT添加数据

    INSERT  INTO  DEPT  VALUES  (10  ,  'ACCOUNTING'  ,  'NEW YORK'  );  COMMIT;INSERT  INTO  DEPT  VALUES  (20  ,  'RESEARCH'  ,  'DALLAS'  );  COMMIT;INSERT  INTO  DEPT  VALUES  (30  ,  'SALES'  ,  'CHICAGO'  );  COMMIT;INSERT  INTO  DEPT  VALUES  (40  ,  'OPERATIONS'  ,  'BOSTON'  );  COMMIT;

    Oracle数据库中通用的函数是什么

    (3)创建EMP表

    CREATE  TABLE  EMP  (EMPNO  NUMBER(4)    CONSTRAINT PK_EMP PRIMARY KEY,  ENAME  VARCHAR2(10),  JOB  VARCHAR2(9),  MGR  NUMBER(4),  HIREDATE  DATE,  SAL  NUMBER(7,2),  COMM  NUMBER(7,2),  DEPTNO  NUMBER(2) CONSTRAINT FK_DEPTNO REFERENCES DEPT);

    Oracle数据库中通用的函数是什么

    (4)表EMP添加数据

    INSERT   INTO   EMP   VALUES  (7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-yyyy'),800,NULL,20);COMMIT;INSERT   INTO   EMP   VALUES  (7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-yyyy'),1600,300,30);COMMIT;INSERT   INTO   EMP   VALUES  (7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-yyyy'),1250,500,30);COMMIT;INSERT   INTO   EMP   VALUES  (7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-yyyy'),2975,NULL,20);COMMIT;INSERT   INTO   EMP   VALUES  (7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-yyyy'),1250,1400,30);COMMIT;INSERT   INTO   EMP   VALUES  (7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-yyyy'),2850,NULL,30);COMMIT;INSERT   INTO   EMP   VALUES  (7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-yyyy'),2450,NULL,10);COMMIT;INSERT   INTO   EMP   VALUES  (7788,'SCOTT','ANALYST',7566,to_date('19-04-1987','dd-mm-yyyy')-85,3000,NULL,20);COMMIT;INSERT   INTO   EMP   VALUES  (7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-yyyy'),5000,NULL,10);COMMIT;INSERT   INTO   EMP   VALUES  (7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-yyyy'),1500,0,30);COMMIT;INSERT   INTO   EMP   VALUES  (7876,'ADAMS','CLERK',7788,to_date('23-05-1987','dd-mm-yyyy')-51,1100,NULL,20);COMMIT;INSERT   INTO   EMP   VALUES  (7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-yyyy'),950,NULL,30);COMMIT;INSERT   INTO   EMP   VALUES  (7902,'FORD','ANALYST',7566,to_date('3-12-1981','dd-mm-yyyy'),3000,NULL,20);COMMIT;INSERT   INTO   EMP   VALUES  (7934,'MILLER','CLERK',7782,to_date('23-1-1982','dd-mm-yyyy'),1300,NULL,10);COMMIT;

    (5)创建SALGRADE表

    CREATE   TABLE   SALGRADE    (GRADE   NUMBER,  LOSAL   NUMBER,  HISAL   NUMBER );

    Oracle数据库中通用的函数是什么

    (6)表SALGRADE添加数据

    INSERT   INTO   SALGRADE   VALUES   (1,700,1200);  COMMIT;INSERT   INTO   SALGRADE   VALUES   (2,1201,1400);  COMMIT;INSERT   INTO   SALGRADE   VALUES   (3,1401,2000);  COMMIT;INSERT   INTO   SALGRADE   VALUES   (4,2001,3000);  COMMIT;INSERT   INTO   SALGRADE   VALUES   (5,3001,9999);  COMMIT;

    (7)创建BONUS表

    CREATE   TABLE   BONUS    (  ENAME   VARCHAR2(10)  , JOB   VARCHAR2(9)  ,  SAL   NUMBER,  COMM   NUMBER  ) ;

    Oracle数据库中通用的函数是什么

    二、单行函数

    1、字符函数

    接收字符输入返回字符或者数值,dual 是伪表

    (1)把小写的字符转换成大写的字符

    --(1)把小写的字符转换成大写的字符select upper('smith') from dual;

    Oracle数据库中通用的函数是什么

    (2)把大写字符变成小写字符

    --(2)把大写字符变成小写字符select lower('WHJ') from dual;

    Oracle数据库中通用的函数是什么

    2、数值函数

    (1)四舍五入函数:round()

    • 默认情况下 ROUND 四舍五入取整,可以自己指定保留的位数

    • 四舍五入函数 小数第一位小于5

    --四舍五入函数 小数第一位小于5select round(5.342345) from dual;

    四舍五入函数 小数第一位大于5

    --四舍五入函数 小数第一位小于5select round(5.342345) from dual;

    Oracle数据库中通用的函数是什么

    四舍五入函数 小数点保留两位

    --四舍五入函数 小数点保留两位select round(5.12764,2) from dual;

    Oracle数据库中通用的函数是什么

    (2)日期函数

    Oracle 中提供了很多和日期相关的函数,包括日期的加减,在日期加减时有一些规律

    日期 – 数字 = 日期

    日期 + 数字 = 日期

    日期 – 日期 = 数字

    范例:查询雇员的进入公司的周数。(分析:查询雇员进入公司的天数(sysdate – 入职日期)/7就是周数)

    --查询雇员的进入公司的周数。(分析:查询雇员进入公司的天数(sysdate – 入职日期)/7就是周数)--1.员工表select * from emp;--2.查询ward 进入公司的周数select Ename,round((sysdate-hiredate)/7) from emp where Ename='WARD';

    Oracle数据库中通用的函数是什么

    获得两个时间段中的月数:MONTHS_BETWEEN()

    范例:查询所有雇员进入公司的月数

    --查询所有雇员进入公司的月数select ename,round(months_between(sysdate,hiredate)) as 进入公司月数 from emp;

    Oracle数据库中通用的函数是什么

    (3)转换函数

    TO_CHAR:字符串转换函数

    范例:查询所有的雇员将将年月日分开,此时可以使用 TO_CHAR 函数来拆分

    拆分时需要使用通配符
    年:y, 年是四位使用 yyyy
    月:m, 月是两位使用 mm
    日:d, 日是两位使用 dd

    查询所有的雇员将将年月日分开

    --查询所有的雇员将将年月日分开select empno,ename,       to_char(hiredate,'yyyy') as 年,       to_char(hiredate,'mm') as 月,       to_char(hiredate,'dd') as 日       from emp;

    Oracle数据库中通用的函数是什么

    日期将日期格式改为yyyy-mm-dd字符串格式

    Oracle数据库中通用的函数是什么

    -- 初始格式select * from emp;--日期将日期格式改为yyyy-mm-dd字符串格式select empno,ename,to_char(hiredate,'yyyy-mm-dd') from emp;

    Oracle数据库中通用的函数是什么

    在结果中10以下的月前面补了0,可以使用fm去掉前置0

    --在结果中10以下的月前面补了0,可以使用fm去掉前置0select empno,ename,to_char(hiredate,'fmyyyy-mm-dd') from emp;

    Oracle数据库中通用的函数是什么

    TO_DATE:日期转换函数

    TO_DATE 可以把字符串的数据转换成日期类型

    --TO_DATE 可以把字符串的数据转换成日期类型select to_date('2022-03-10','yyyy/mm/dd:ss')as 当前日期 from dual;

    Oracle数据库中通用的函数是什么

    (4)通用函数

    空值处理 nvl

    范例:查询所有的雇员的年薪

    --查询所有的雇员的年薪 comm年终奖select ename,sal*12+comm from emp;

    Oracle数据库中通用的函数是什么

    我们发现很多员工的年薪是空的,原因是很多员工的奖金是 null,null 和任何数值计算都是

    null,这时我们可以使用 nvl 来处理

    --查询所有的雇员的年薪 comm年终奖select ename,nvl(comm,0) 年终奖 ,sal*12+nvl(comm,0)年薪 from emp;

    Oracle数据库中通用的函数是什么

    Decode 函数

    --该函数类似 if....else if...esle --语法: DECODE(col/expression, [search2,result1],[search3, result2]....[default])Col/expression:列名或表达式 1. Search2,search3...:用于比较的条件2. Result1, result2...:返回值3. 如果 col/expression 和 Searchi 匹配就返回 resulti,否则返回 default 的默认值
    --decode函数--1. 我是1select decode(1,1,'我是1',2,'我是2','我是无名') from dual;--2. 我是2select decode(2,1,'我是1',2,'我是2','我是无名') from dual;--3. 我是无名select decode(3,1,'我是1',2,'我是2','我是无名') from dual;

    Oracle数据库中通用的函数是什么

    范例:查询出所有雇员的职位的中文名

    select ename,decode(job,                   'clerk','业务员',                   'SALESMAN','销售',                   'PRESIDENT','总裁',                   'MANAGER','经理',                   'NALYST','分析员',                   '员工'                    ) from emp ;

    Oracle数据库中通用的函数是什么

    case when

    CASE expr WHEN comparison_expr1 THEN return_expr1 [WHEN comparison_expr2 THEN return_expr2 WHEN comparison_exprn THEN return_exprn  ELSE else_expr]END

    范例:查询出所有雇员的职位的中文名

    --范例:Case when 查询出所有雇员的职位的中文名select t.empno,t.ename,       case          when t.job='clerk' then '业务员'          when t.job='SALESMAN' then '销售'          when t.job='PRESIDENT' then '总裁'          when t.job='MANAGER' then '经理'          when t.job='NALYST' then '分析员'          else '员工'          end          from emp t;

    Oracle数据库中通用的函数是什么

    三、多行函数(聚合函数)

    1、统计记录数

    范例:查询出所有员工的记录数

    -- 范例:查询出所有员工的记录数select count(*) from emp;

    不建议使用 count(*),可以使用一个具体的列以免影响性能。

    --不建议使用 count(*),可以使用一个具体的列以免影响性能。select count(ename) from emp;

    2、最小值查询 min()

    范例:查询出来员工最低工资

    --范例:查询出来员工最低工资select min(sal) from emp;

    3、最大值查询 max()

    范例:查询出员工的最高工资

    --范例:查询出员工的最高工资select max(sal) from emp;

    4、平均值查询 avg()

    范例:查询出员工的平均工资

    --范例:查询出员工的平均工资select avg(sal) from emp;

    5、求和函数

    范例:查询出 20 号部门的员工的工资总和

    --范例:查询出 20 号部门的员工的工资总和select sum(sal) from emp where deptno=20;

    四、分组统计

    分组统计需要使用 GROUP BY 来分组

    --语法:SELECT * |列名 FROM 表名 {WEHRE 查询条件} {GROUP BY 分组字段} ORDER BY  列 名 1 ASC|DESC,列名 2...ASC|DESC

    范例:查询每个部门的人数

    -- 范例:查询每个部门的人数select deptno,count(ename) from emp group by deptno;

    范例:查询出每个部门的平均工资

    -- 范例:查询出每个部门的平均工资select deptno,avg(sal) from emp group by deptno;

    如果我们想查询出来部门编号,和部门下的人数

    -- 如果我们想查询出来部门编号,和部门下的人数select deptno,count(ename) from emp;

    我们发现报了一个 ORA-00937 的错误

    Oracle数据库中通用的函数是什么

    注意:

    如果使用分组函数,SQL 只可以把 GOURP BY 分组条件字段和分组函数查询出来,不能有其
     
    他字段。
     
    2. 如果使用分组函数,不使用 GROUP BY 只可以查询出来分组函数的值

    范例:按部门分组,查询出部门名称和部门的员工数量

    -- 范例:按部门分组,查询出部门名称和部门的员工数量select d.deptno,d.dname,count(e.ename) from emp e,dept dwhere e.deptno=d.deptno group by d.deptno,d.dname

    Oracle数据库中通用的函数是什么

    范例:查询出部门人数大于 5 人的部门

    -- 范例:查询出部门人数大于 5 人的部门--(分析:需要给 count(ename)加条件,此时在本查询中不能使用 where,可以使用 HAVING)select d.deptno,d.dname,count(e.ename)  from emp e,dept d where e.deptno=d.deptno  group by d.deptno,d.dname  having  count(e.ename)>5 ;

    分析:需要给 count(ename)加条件,此时在本查询中不能使用 where,可以使用 HAVING

    Oracle数据库中通用的函数是什么

    范例:查询出部门平均工资大于 2000 的部门

    -- 范例:查询出部门平均工资大于 2000 的部门 select d.deptno,d.dname,avg(e.sal) from dept d ,emp e where d.deptno=e.deptno  group by d.deptno,d.dname  having avg(e.sal)>2000;

    Oracle数据库中通用的函数是什么

    以上是“Oracle数据库中通用的函数是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    Oracle数据库中通用的函数是什么

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    Oracle数据库中通用的函数是什么

    这篇文章主要为大家展示了“Oracle数据库中通用的函数是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle数据库中通用的函数是什么”这篇文章吧。一、 Scott用户下的表结构SCO
    2023-06-29

    数据库中datediff函数的用法是什么

    DATEDIFF函数用于计算两个日期之间的差值。它的语法如下:DATEDIFF(unit, start_date, end_date)这里的unit参数指定了要计算的差值单位,可以是以下值之一:- YEAR:计算年份差值- QUARTER:
    2023-09-05

    数据库中函数依赖的作用是什么

    数据库中的函数依赖用于描述和约束数据之间的关系。它们的作用包括:1. 数据完整性:函数依赖可以用来确保数据库中的数据完整性。通过定义函数依赖关系,可以确保数据的一致性和正确性。例如,如果关系模式R中的一个属性A完全依赖于另一个属性B,则可以
    2023-10-20

    Oracle数据库中的分布式数据库是什么

    在Oracle数据库中,分布式数据库是指在不同物理位置上的多个数据库实例能够通过网络连接相互通信和协作的系统。分布式数据库可以让用户在不同的地理位置上访问和操作数据,同时也能提高数据的可用性、可靠性和性能。Oracle数据库中的分布式数据
    Oracle数据库中的分布式数据库是什么
    2024-03-02

    数据库dateadd函数的用法是什么

    DATEADD函数用于向日期添加指定的时间间隔。其基本语法如下:DATEADD(datepart, number, date)其中,datepart参数指定要添加到日期的时间间隔(如年、月、天等);number参数指定要添加的数量;dat
    数据库dateadd函数的用法是什么
    2024-03-04

    数据库nvl函数的用法是什么

    在数据库中,NVL函数是一个用于处理空值的函数。它的作用是如果一个表达式的值为NULL,则返回一个指定的替代值,否则返回原始表达式的值。NVL函数的语法如下:NVL(expression1, expression2)其中,expressio
    2023-10-11

    数据库datediff函数的用法是什么

    DATEDIFF函数是用于计算两个日期之间的差异的函数。它的用法如下:DATEDIFF(unit, start_date, end_date)其中,unit是表示日期差异的单位,start_date是起始日期,end_date是结束日期。u
    2023-09-22

    oracle数据库的作用是什么

    oracle 数据库是一种广泛用于各个行业的关系列型数据库管理系统 (rdbms),其主要作用包括数据存储、管理和安全,事务处理,数据分析和报告,高可用性和可扩展性,以及集成功能。Oracle 数据库的作用Oracle 数据库是一种关系型
    oracle数据库的作用是什么
    2024-05-11

    Oracle数据库函数怎么用

    小编给大家分享一下Oracle数据库函数怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、什么是窗口函数?窗口函数也属于分析函数。Oracle从8.1.6开
    2023-06-22

    oracle是什么数据库

    Oracle是一种关系型数据库管理系统(RDBMS),由Oracle公司开发和维护。它是一种高性能、可靠、可扩展的数据库系统,被广泛用于企业级应用和大型数据处理。Oracle数据库支持SQL语言,并提供了许多高级功能和工具,如事务处理、并发
    2023-08-30

    什么是Oracle数据库

    Oracle数据库是由Oracle公司开发的一种关系型数据库管理系统。它具有可扩展性、高性能和强大的安全功能,被广泛用于企业级应用程序的开发和部署。Oracle数据库支持多种操作系统和编程语言,并提供了丰富的功能和工具,如事务处理、数据备份
    什么是Oracle数据库
    2024-04-09

    Oracle数据库中的视图是什么

    在Oracle数据库中,视图是一种虚拟的表,它是通过一个查询语句来定义的。视图本身并不包含任何数据,而是基于查询语句的结果集。用户可以像访问表一样使用视图,从而简化复杂查询和保护数据安全性。视图可以帮助用户隐藏底层表的细节,提供更简单和直观
    Oracle数据库中的视图是什么
    2024-04-09

    Oracle数据库中的约束是什么

    在Oracle数据库中,约束是用来确保数据完整性和一致性的规则。约束可以应用在表的列级别或表级别,常见的约束类型包括:主键约束:确保列或列组的唯一性,并且列或列组不允许包含NULL值。外键约束:确保一个表中的外键值只能引用另一表中的主键值
    Oracle数据库中的约束是什么
    2024-03-02

    Oracle数据库中的索引是什么

    索引是一种特殊的数据库对象,它可以加快数据库查询操作的速度。索引可以帮助数据库系统快速定位和访问表中的数据,从而提高查询效率。在Oracle数据库中,索引可以基于一个或多个列创建,可以是唯一索引或非唯一索引。通过在经常进行查询的列上创建索引
    Oracle数据库中的索引是什么
    2024-03-02

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录