1、把vachar转换为number类型,去除掉非法字符:
TO_NUMBER(REGEXP_REPLACE(字段名,'[^0-9]',''))
2.获取当前年份:
to_char(sysdate,'yyyy')
3.截取年份月份:
to_char(时间字段,'yyyy-mm-dd hh:mm:ss')
4.如果字段的值为空返回0,不是空返回字段的值
CASE WHEN t2.Score IS NULL THEN 0 ELSE t2.Score END
5.取四舍五入并保留四位
select round(column_name, 4) from table_name;
6.保留四位小数,只舍:
select trunc(column_name, 4) from dual;
7.substr函数的用法,取得字符串中指定起始位置和长度的字符串 ,默认是从起始位置到结束的子串:
substr( string, start_position, [ length ] ) //substr('目标字符串',开始位置,长度)
8.截取字符串
substr(字符串,-10)
9.时间转换:
select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual
select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;
10.去重
select count(distinct ear_tag) from nc_basic_information
11.正则分割:
SELECT REGEXP_SUBSTR('ABCD+北京市朝阳区富贵小区3号楼1单元101+100000+平邮', '[^+]+', 1, 1),
REGEXP_SUBSTR('ABCD+北京市朝阳区富贵小区3号楼1单元101+100000+平邮', '[^+]+', 1, 2),
REGEXP_SUBSTR('ABCD+北京市朝阳区富贵小区3号楼1单元101+100000+平邮', '[^+]+', 1, 3),
REGEXP_SUBSTR('ABCD+北京市朝阳区富贵小区3号楼1单元101+100000+平邮', '[^+]+', 1, 4)
FROM DUAL
12.拼接
SELECT CONCAT('工号:','aaa') FROM dual;
13.根据一个字段相同拼接另一个字段为一条数据
SELECT BUDGETPROJECTID, LISTAGG(DistributionName, ',')
WITHIN GROUP (ORDER BY BUDGETPROJECTID) AS DistributionName
FROM T_BudgetProject_Reduce
GROUP BY BUDGETPROJECTID
14.plsql执行sql文件
1、File > New > Command Windows(左上角文件>新建>命令窗口)
2、第三步输入 @ 符号,之后敲击回车键。从本地选择执行的SQL脚本。
3、要想批量执行sql脚本,可以新建一个文本,使用@拼接本地路径。如下图:all.sql
15、删除表空间
--删除表空间
drop user BDC_JOB cascade;
DROP TABLESPACE BDC_JOB INCLUDING CONTENTS AND DATAFILES;
一、在还原Oracle某个用户的数据之前应把该用户及其已有的数据删掉,然后新建同名的用户并指定对应的表空间、临时空间等,并授权。但在删除该用户时提示“无法删除当前已连接的用户”,该问题的解决方案如下:
--1、先将待删除用户锁定
alter user XDBH account lock;
--2、查询该用户已连接的回话
select username,sid,serial# from v$session where username='XDBH';
--查询结果:
--USERNAME SID SERIAL#
--XDBH 927 25285
--XDBH 1974 31863
--XDBH 2405 18931
--3、然后基于语句alter system kill session 'xx,xxx'来关闭对应的回话,xx,xxx分别代表查询出来的sid和serial#
alter system kill session '927,25285'
16、ORA-01144: 文件大小 (13107200 块) 超出 4194303 块的最大数
--创建bdc_job表空间
CREATE TABLESPACE BDC_JOB
LOGGING
DATAFILE 'E:\OracleData\BDC_JOB.DBF' SIZE 512M
AUTOEXTEND
ON NEXT 256M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;
--创建bdc_job用户
CREATE USER BDC_JOB PROFILE "DEFAULT"
IDENTIFIED BY "sa123" DEFAULT TABLESPACE "BDC_JOB"
TEMPORARY TABLESPACE "TEMP"
ACCOUNT UNLOCK;
--增大内存
alter tablespace BDC_JOB add datafile 'E:\OracleData\BDC_JOB01.DBF' size 30g;
alter tablespace BDC_JOB add datafile 'E:\OracleData\BDC_JOB02.DBF' size 30g;
alter tablespace BDC_JOB add datafile 'E:\OracleData\BDC_JOB03.DBF' size 30g;