Oracle 11g学习篇(五)——SQL的使用


一、SQL中常用函数的使用

1、字符< Ltrim、Replace、Rtrim、Substr、Trim>

(1)Ltrim

  • 函数形式:Ltrim(X1,X2)
  • 函数说明:从X1字符串左边删除X2字符,遇到非X2字符时停止。不指定X2时,默认为空格。
  • 举例:select ltrim(‘1hello world1’,‘1’)from dual;
  • 运行结果:
    在这里插入图片描述
  • 更多例子:
    在这里插入图片描述

(2)Replace

  • 函数形式:Replace(X,A,B)
  • 函数说明:用B字符串取代X中所有的A字符串。
  • 举例:select replace(‘11helloworld11’,‘1’,’!’)from dual;
  • 运行结果:
    在这里插入图片描述

(3)Rtrim

  • 函数形式:Rtrim(X1,X2)
  • 函数说明:从X1字符串右边删除字符X2,遇到非X2时停止.。不指定X2时,默认为空格。
  • 举例:select rtrim(‘1hello world1’,‘1’)from dual;
  • 运行结果:
    在这里插入图片描述
  • 更多实例:
    在这里插入图片描述

(4)Substr

  • 函数形式:Substr(X,a,b)
  • 函数说明:由字符串左边第a个字符开始截取b长度的字符。
  • 举例:select substr(‘1hello world1’,2,5)from dual;
  • 运行结果:
    在这里插入图片描述

(5)Trim

  • 函数形式:Trim(‘a’from’X’)
  • 函数说明:删除X头尾的字符a,遇到非a停止,且字符a只能由一个字符组成。
  • 举例:select trim(‘1’from’100hello 1 world111’)from dual;
  • 运行结果:
    在这里插入图片描述

2、日期< Sysdate、next_day>

(1)Sysdate

  • 函数形式:sysdate
  • 函数说明:得到当前系统的时间。
  • 举例:select sysdate from dual;
  • 运行结果:
    在这里插入图片描述

(2)next_day

  • 函数形式:next_day(date,day)
  • 函数说明:得到指定日期date的下一day的日期。
  • 举例:select next_day(sysdate,‘星期一’)from dual;
  • 运行结果:
    在这里插入图片描述
    注:如果输入的day是数字的话,从周日算起,周日就为第一天。例如输入select next_day(sysdate,1)from dual;那么显示的就是11-4月 -21。(这里的sysdate是2021/4/8)。
    在这里插入图片描述

3、转换< To_char、to_date、to_number>

(1)to_char

  • 函数形式:to_char(X,’格式’)
  • 函数说明:将指定的表达式转变成字符串形式。
  • 举例:select to_char(123.123,‘000.00’)from dual;
  • 运行结果:
    在这里插入图片描述

(2)to_date

  • 函数形式:to_date(X,’格式’)
  • 函数说明:将字符串转化成日期。
  • 举例:select to_date(‘2021-04-08’,’yyyy-mm-dd’)from dual;

(3)to_number

  • 函数形式:to_number(X,’格式’)
  • 函数说明:将制定表达式转化为数值类型。
  • 举例:select to_number(‘112233’)from dual;
  • 运行结果:
    在这里插入图片描述
    ①进制转化;
    在这里插入图片描述
    ②格式转换范围错误时会提示错误;
    在这里插入图片描述

4、统计函数< Sum、Avg、Max、Min、Count>

(1)sum

  • 函数形式:sum(数据字段名)
  • 函数说明:统计数据累计和。
  • 举例:select sum(sal) from scott.emp;
  • 运行结果:
    在这里插入图片描述

(2)avg

  • 函数形式:avg(数据字段名) 求取数据平均值
  • 函数说明:求取数据平均值
  • 举例:select avg(sal) from scott.emp;
  • 运行结果:
    在这里插入图片描述

(3)max

  • 函数形式:max(数据字段名) 查找数据最大值
  • 函数说明:查找数据最大值。
  • 举例:select max(sal) from scott.emp;
  • 运行结果:
    在这里插入图片描述

(4)min

  • 函数形式:min(数据字段名)
  • 函数说明:查找数据最小值。
  • 举例:select min(sal) from scott.emp;
  • 运行结果:
    在这里插入图片描述

(5)count

  • 函数形式:对数据进行累计计数
  • 函数说明:count(数据字段名)
  • 举例:select count(sal) from scott.emp;
  • 运行结果:
    在这里插入图片描述

5、其他< User、Decode、Nvl>

(1)user

  • 函数形式:user
  • 函数说明:获取当前用户的用户名
  • 举例:select user from dual;
  • 运行结果:
    在这里插入图片描述

(2)decode

  • 函数形式:decode (expression, search, result)
  • 函数说明:将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。
  • 举例:select sal,decode(sal,3000,‘工作不易’)from scott.emp;
  • 运行结果:
    在这里插入图片描述

(3)nvl

  • 函数形式:nvl(参数1,参数2)
  • 函数说明:判断列值是否为空。
  • 举例:select ename,nvl(comm,0) from scott.emp;
  • 运行结果:
    在这里插入图片描述

二、dual关键词

1、含义

dual是一个一行一列的虚拟表,为了符合SQL规范而设计的。任何用户均可读取,常用在没有目标表的select语句块中。

2、举例

(1)查看dual表
在这里插入图片描述
(2)查看当前连接用户
在这里插入图片描述
(3)查看当前日期
在这里插入图片描述
(4)当作计算器
在这里插入图片描述

三、SQL事务处理

(1)选择SCOTT 下的dept表;
在这里插入图片描述
(2)插入两条数据及相应的保存点;
在这里插入图片描述
(3)插入数据后,表显示如下;
在这里插入图片描述
(4)回退至S1并提交;
在这里插入图片描述
(5)查看表以验证是否回退。
在这里插入图片描述

四、SQL语言的应用

1、解锁HR模式,对HR模式下的表进行操作:
此操作不记录。
2、以HR身份登录数据库后进行如下操作:
(1)查询HR.EMPLOYEES表的表结构;
在这里插入图片描述
(2)查询EMPLOYEES表中每个雇员的姓名(要求将first_name,last_name字段连接在一起显示)、职位、工薪、部门编号;
在这里插入图片描述
(3)查询HR.DEPARTMENTS表的表结构;
在这里插入图片描述
(4)使用子查询查询属于某一部门员工的姓名、职位、工薪、部门编号的信息(已知的信息为部门名称,部门名称由用户自己给出);
在这里插入图片描述
(5)统计某一部门的雇员的最高和最低工薪;
在这里插入图片描述
(6)向EMPLOYEES表添加一组数据:
values(600,’LISI’,’lisi@163.com’,sysdate,’SH_CLERK’,1650);通过SELECT查询语句,查看是否在EMPLOYEES表中添加了相应的记录;
在这里插入图片描述在这里插入图片描述
(7)使用UPDATE语句更新该记录的SALARY列,为部门编号80的员工上调工薪10%;
在这里插入图片描述
在这里插入图片描述
(8)删除操作(6)中新增加的那条记录。
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第ⅰ部分 关键的数据库概念  第1章 oracle database 11g 体系结构  第2章 安装oracle database 11g 和创建数据库  第3章 升级到oracle database 11g  第4章 规划oracle 应用程序——方法、风险和标准 第ⅱ部分 sqlsql*plus  第5章 sql 中的基本语法  第6章 基本的sql*plus 报表和命令  第7章 文本信息的收集与更改  第8章 正则表达式搜索  第9章 数值处理  第10章 日期:过去、现在及日期的差  第11章 转换函数与变换函数  第12章 分组函数  第13章 当一个查询依赖于另一个查询时  第14章 一些复杂的技术  第15章 更改数据:插入﹑更新﹑合并和删除  第16章 decode 和case:sql中的if-then-else  第17章 创建和管理表、视图、索引、群集和序列  第18章 分区 . 第19章 oracle 基本安全 第ⅲ部分 高 级 主 题  第20章 高级安全性——虚拟专用数据库  第21章 高级安全性:透明数据加密  第22章 使用表空间  第23章 用sql*loader 加载数据  第24章 使用data pump export 和data pump import  第25章 访问远程数据  第26章 使用物化视图  第27章 使用oracle text 进行文本搜索  第28章 使用外部表  第29章 使用闪回查询  第30章 闪回:表和数据库  第31章 sql 重放 第ⅳ部分 pl/sql  第32章 pl/sql 简介  第33章 应用程序在线升级  第34章 触发器  第35章 过程、函数与程序包  第36章 使用本地动态sql 和dbms_sql  第37章 pl/sql 调整 第ⅴ部分 对象关系数据库  第38章 实现对象类型、对象视图和方法  第39章 收集器(嵌套表和可变数组)  第40章 使用大对象  第41章 面向对象的高级概念 第ⅵ部分 oracle 中的java  第42章 java 简介  第43章 jdbc 程序设计  第44章 java 存储过程 第ⅶ部分 指 南  第45章 oracle 数据字典指南  第46章 应用程序和sql 调整指南  第47章 sql 结果缓存和客户端查询缓存  第48章 关于调整的示例分析  第49章 高级体系结构选项—— db保险库、内容db 和记录db  第50章 oracle 实时应用群集  第51章 数据库管理指南  第52章 oracle 中的xml 指南 第ⅷ部分 附 录 附录a 命令和术语参考
Oracle 11g是一种关系型数据库管理系统,具有强大的数据管理和查询功能。以下是关于Oracle 11g SQL基础知识的回答。 SQL(Structured Query Language)是一种用于与数据库进行交互的标准语言。在Oracle 11g中,SQL被用于进行数据的创建、修改、删除和查询。 首先,创建表是操作数据库的基础之一。通过使用CREATE TABLE语句,我们可以指定表的名称、列的名称和数据类型。例如,创建一个名为"employees"的表,包含员工的姓名、年龄和工资信息,可以使用以下SQL语句: CREATE TABLE employees ( name VARCHAR(50), age INT, salary DECIMAL(10,2) ); 接下来,可以使用INSERT INTO语句向表中插入数据。例如,插入一条员工信息的SQL语句如下: INSERT INTO employees (name, age, salary) VALUES ('John', 30, 5000.00); 为了查询表中的数据,可以使用SELECT语句。SELECT语句允许我们指定要检索的列,使用FROM关键字指定表的名称,以及可以使用WHERE子句来加入筛选条件。例如,检索所有员工的姓名和工资信息的SQL语句如下: SELECT name, salary FROM employees; 还可以使用UPDATE语句修改表中的数据。例如,将员工John的工资提高到6000.00的SQL语句如下: UPDATE employees SET salary = 6000.00 WHERE name = 'John'; 最后,可以使用DELETE语句删除表中的数据。例如,删除所有年龄小于25岁的员工信息的SQL语句如下: DELETE FROM employees WHERE age < 25; 除了上述基本的SQL语句,Oracle 11g还有其他高级功能,如聚合函数、连接、子查询、视图和索引等。这些功能可以帮助我们更高效地操作和查询数据。 简而言之,Oracle 11g SQL基础涵盖了表的创建、数据的插入、查询、修改和删除。通过掌握这些基础知识,我们可以使用SQL语言进行数据管理和操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值