ORACLE SQL单行函数(一)【weber出品必属精品】

1.SUBSTR:求父串中的子串

SUBSTR(‘HelloWorld‘,1,5)

1:代表子串的起始位置,如果为正,正数,如果为负,倒数

5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数到最后

SUBSTR:求父串中的子串

SUBSTR(‘HelloWorld‘,1,5)

1:代表子串的起始位置,如果为正,正数,如果为负,倒数
5:代表字串的终止位置,只能向右数,可以省略,如果省略就是数到最后

2.LENGTH:求字符串的长度  

SQL> select LENGTH(‘HELLOWORLD‘) from dual;

LENGTH(‘HELLOWORLD‘)
--------------------
          10

3.INSTR:求子串在父串中的位置 

SQL> select INSTR(‘HelloWorld‘,‘W‘) from dual;

INSTR(‘HELLOWORLD‘,‘W‘)
-----------------------
              6

4. LPAD和RPAD:格式化输出

SQL> select LPAD(sal,10,‘*‘),rpad(sal,10,‘*‘) from emp;

LPAD(SAL,10,‘*‘)                         RPAD(SAL,10,‘*‘)
---------------------------------------- ----------------------------------------
*******800                               800*******
******1600                               1600******
******1250                               1250******
******2975                               2975******
******1250                               1250******

5. REPLACE:把父串中的子串用另一个子串替换

SQL> select REPLACE(‘JACK and JUE‘,‘J‘,‘BL‘) replace from dual;

REPLACE
--------------
BLACK and BLUE

6. TRIM:从父串中截断前置和后置连续的某个字符串:

SQL> select TRIM(‘H‘ from ‘HHHHelloWorldHHH‘) from dual;

TRIM(‘H‘F
---------
elloWorld

7.两个表示字符的数据类型:

varchar2(n):可变长度的,根据插入数据的长度,来分配长度

char(n):固定长度的,即使插入的数据小于n,那么oracle也会分配长度为n,不够n用空格补齐

SQL> create table t1(id number,name varchar2(10));

Table created.

SQL> create table t2(id number,name char(10));

Table created.

SQL> insert into t1 values(1,‘a‘);

1 row created.

SQL> insert into t1 values(2,‘b‘);

1 row created.

SQL> commit;

Commit complete.

SQL> insert into t2 values(1,‘a‘);

1 row created.

SQL> insert into t2 values(2,‘b‘);

1 row created.

SQL> insert into t2 values(3,‘c‘);

1 row created.

SQL> commit;

Commit complete.

SQL> select * from t1;

        ID NAME
---------- ----------
         1 a
         2 b

SQL> select * from t2;

        ID NAME
---------- ----------
         1 a
         2 b
         3 c

SQL> select t1.id,t2.name from t1,t2 where t1.name=t2.name;

no rows selected

SQL> select t1.id,t2.name from t1,t2 where t1.name=trim(t2.name);---这里演示了trim()的应用场景

        ID NAME
---------- ----------
         1 a
         2 b

8.数字函数

ROUND:对指定的值进行四舍五入

TRUNC:对指定的值进行截断

select trunc(45.926,2),round(45.926,2) from dual;

TRUNC(45.926,2) ROUND(45.926,2)
--------------- ---------------
          45.92           45.93

9.MOD:返回除法计算后的余数

SQL> select mod(1600,300) from dual;

MOD(1600,300)
-------------
      100

SQL> select mod(300,1600) from dual;

MOD(300,1600)
-------------
      300

10.日期函数

Oracle 以一种内部的格式来保存日期: 世纪,年,月,日,小时,分钟,秒

缺省的格式:DD-MON-RR

通过只指定年份的后两位,可以在20世纪存储21世纪的日期,以同样的方法,可以在21世纪存储20世纪的日期

SYSDATE 是一个返回日期和时间的函数,他的值来源于操作系统

SQL> select sysdate from dual;

SYSDATE
---------
15-AUG-14

ORACLE SQL单行函数(一)【weber出品必属精品】,布布扣,bubuko.com

时间: 2024-12-30 03:19:33

ORACLE SQL单行函数(一)【weber出品必属精品】的相关文章

ORACLE SQL 组函数【weber出品必属精品】

组函数:对一组数据进行加工,每组数据返回一个值 常用的组函数:count()  avg()  max()   min()  sum()   count()函数  1. count(*) :返回总共的行数,不去除NULL值 2. count(column):返回非NULL行的数量 SQL> select count(*) ,count(sal),count(comm) from emp; COUNT(*) COUNT(SAL) COUNT(COMM) ---------- ---------- -

oracle数据库事务相关【weber出品必属精品】

事务的概念:事务:一个事务由一组构成一个逻辑操作的DML语句组成 事务有开始有结束,事务以DML语句开始,以Conmmit和Rollback结束.以下情况会使得事务结束: 1. 执行COMMIT 或者 ROLLBACK 语句 2. 执行DDL或者 DCL语句 3. 用户退出 4. 系统崩溃 一个事务可以包含下列语句: 1. 对数据做出一致性修改的DML语句 2. 一个 DDL 语句 3. 一个 DCL语句 DDL与和DCL语句执行的过程: 1. 首先发出COMMIT; 2. 执行对数据字典的DM

创建存储过程和函数【weber出品必属精品】

一.什么是存储过程和函数 1. 是被命名的pl/sql块 2. 被称之为pl/sql子程序 3. 与匿名块类似,有块结构: 声明部分是可选的(没有declare关键字) 必须有执行部分 可选的异常处理部分 二.匿名块和子程序之间的区别 三.存储过程:语法 CREATE [OR REPLACE] PROCEDURE procedure_name [(argument1 [mode1] datatype1, argument2 [mode2] datatype2, . . .)] IS|AS pro

ORACLE SQL单行函数(二)【weber出品必属精品】

11.dual:虚表,任何用户都可以使用,表结构如下: SQL> desc dual Name Null? Type ----------------------------------------- -------- ---------------------------- DUMMY VARCHAR2(1) 12.dual的作用: 1. 查询数据库系统日期 2. 进行四则运算 SQL> select sysdate from dual; ---这里查询数据库系统日期 SYSDATE ---

ORACLE SQL单行函数(三)【weber出品必属精品】

16.L:代表本地货币符,这个和区域有关.这个时候我们想来显示一下人民币的符号:¥ $ vi .bash_profile ---写入如下内容: export NLS_LANG='SIMPLIFIED CHINESE'_CHINA.AL32UTF8 ---修改成简体中文+地区+字符集 source .bash_profile ---让环境变量生效 [[email protected] ~]$ sqlplus scott/tiger SQL*Plus: Release 10.2.0.5.0 - Pr

静默安装ORACLE【weber出品必属精品】

由于本次的实验我是将上次的虚拟机直接拷贝过来,然后将里面图形化界面安装好了的oracle给删除,再次重新安装,所以这里要修改一些配置. 首先修改的是我们的IP地址 # system-config-network 完成后我们修改一下hosts文件,将里面的ip地址给修改一下 # vi /etc/hosts 接着我们删除上次安装过的ORACLE文件 # cd $ORACLE_BASE # ls # rm -rf * 进入root:rm -rf /etc/ora* 还是在安装前进行配置. 接下来进行静

全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】

<ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入Disk1.然后执行安装: $ ./runInstaller 执行脚本 # /u01/app/oracle/10.2.0/db_1/root.sh Running Oracle 10g root.sh script... The following environment variables are set a

全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】

安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装配置系统环境安装linux ,所有服务都不选择,只是选择安装开发工具,不要安装防火墙(当然也可以在后面关闭) 打开终端,执行如下命令,检查安装包,没有的都要安装 make, glibc, libaio compat-libstdc++, compat-gcc-34, compat-gcc-34-c++, gc

linux删除ORACLE【weber出品必属精品】

关闭数据库 sqlplus / as sysdba shutdown abort 清除oracle软件 su - oracle cd $ORACLE_BASE rm -rf * rm -rf /etc/ora* 删除之前的设置的配置文件的内容 如果之前改过版本,编辑文件 /etc/redhat-release 把Red Hat Enterprise Linux Server release 4 (Tikanga) 改成版本5 vi /etc/pam.d/login 行末删除以下内容 sessio