【使用Oracle(SQL Plus)】教程文章相关的互联网学习教程文章

oracle sql表联合报错invalid number,筛出字段中的数值集合【代码】【图】

在执行一段查询SQL的时候报错,系统提示此错误:经几遍修改SQL还是报该错,核对SQL语句无误,经查看数据集,匹配id存在非数值记录1.在查询的where里面加入条件语句,查看异常数据:select*from 表名 where nvl2(translate(字段名,‘/1234567890‘,‘/‘),‘CHAR‘,‘NUMBER‘) =‘CHAR‘2.正则表达式函数 REGEXP_SUBSTR 处理,将数据进行过滤,ok!--条件语句:where REGEXP_SUBSTR(t1.operatorid, ‘[0-9]+‘) ISNOTNULL--示例:...

oracle SQL查询number字段精度丢失之解决方法【代码】

解决办法:-- 3.3:表示原始数据 --fm9999999990.0000:表示保留到小数点后4位,若不存在则用0补位。select to_char(nvl(3.3,0),‘fm9999999990.0000‘) as demo from dual; 原文:https://www.cnblogs.com/dqcer/p/9235847.html

oracle sql中涉及is null时如何优化(索引创建和直方图)

适用场景试想下面的sqlSelect* fromBD_INVMANDOC_bak t where t.negallowed is nullor t.negallowed=‘N‘如果negallowed列只有两个值:Y和N,并且存在NULL那么我们在negallowed列创建一个索引,这个语句仍然不能走索引,原因为索引中不存储null值。BD_INVMANDOC_bak表106万数据,其中5万行值为N,100万行为Y,其余为null。如何走索引需要创建一个包含虚拟列的复合索引,这样可以实现索引中包含negallowed列的null值创建索引如下...

Oracle--SQL Developer创建连接及使用【图】

安装好Oracle之后,有几种方式可以来管理Oracle中的数据库,首先就是登陆网页版的界面:https://localhost:1158/em,这种方式管理的东西太多,使用起来有点不方便,第二种方式在cmd上使用sqlplus输入用户名密码登陆,这种方式需要记忆sql语句用起来才方便,有点不好,比如找一个查询某个表中有哪些约束条件,这条语句我搜索半天都没找到,而在mysql只要使用show create table <tablename>,习惯了mysql的show命令,在用这个sqlplus有...

oracle之sql查询

oracle表管理表名和列的命名规则:必须以字母开头长度不能超过30字符不能使用oracle的保留字只能使用如下字符:A-Z,a-z,0-9,$,#等字符型:char:定长 最大2000字符例子:char(10) ‘小韩‘ 前四个字符放‘小韩‘,后面添6个空格补全比如身份证定长,查询速度很快varchar2(20) 变长 最大4000字符,oracle推荐使用的类型例子:varchar2(10) ‘小韩‘ oracle分配四个字符,这样可以省略空间clob(character large object) 字符型大对...

Oracle_SQL(2) 分组与聚合函数

一、聚合函数1.定义:对表或视图的查询时,针对多行记录只返回一个值的函数。2.用途:用于select语句,HAVING条件二、5种聚合函数1.SUM(n) 对列求和 select sum(sal) from emp; select deptno,sum(sal) from emp group by deptno;2.AVG(n) 对列求平均值 select avg(sal) from emp; select deptno,avg(sal) from emp group by deptno;3.MAX(n) 对列求最大值 select max(sal) from emp; select deptno,max(sal) from emp g...

Oracle sql%rowcount 返回影响行数;sql server @@RowCount返回影响行数【代码】

sql server中,返回影响行数是:If @@RowCount<1 Oracle中,返回影响行数是:If sql%rowcount<1 例:sqlserver:createprocedure Proc_test@Statint=0,@MsgIdvarchar(50)=‘‘, ASBEGINUpdate T_Mt Set Stat=@Stat,OStat=@Stat,RptTime=Getdate() Where MsgId=@MsgIdIf@@RowCount<1--没有更新成功就插入到t_Statbuf insertinto t_statbuf(MsgId,Stat,RptTime) values(@MsgId,@Stat,Getdate()) ENDoracle:CREA...

Oracle 通过sql profile为sql语句加hint

sql profile最大的优点是在不修改sql语句和会话执行环境的情况下去优化sql的执行效率,适合无法在应用程序中修改sql时.sql profile最常用方法大概是:--创建产生sql tuning advisor任务DECLARE tuning_task varchar2(100); l_sql_id v$session.prev_sql_id%TYPE;BEGIN l_sql_id := ‘6w02d3ggsj4xb‘; tuning_task := dbms_sqltune.create_tuning_task(sql_id => l_sql_id); dbms_sqltune.execute_tuning_task(tuning_tas...

Oracle/SQL 修改字段类型和长度

标准SQL修改字段类型和长度语句:ALTER TABLE tableName modify column columnName 类型;例如Mysql的修改字段类型语句:alter table test modify column name varchar(255);Oracle修改字段类型和长度语句:ALTER TABLE tableName modify(columnName 类型);例如alter table test modify(name varchar(255));原文:http://www.cnblogs.com/jsunday/p/3789961.html

Oracle--SQL程序优化案例一

下面是存储过程的一部分程序: PROCEDURE SAP_MAN_ROUTING_SO (CITEM_ID VARCHAR2, CSITE_ID VARCHAR2, CTYPE VARCHAR2) IS V_ROUTING VARCHAR2 (40); BEGIN IF (CITEM_ID NOT LIKE ‘%C%‘) THEN SELECT NVL (TRIM (RR.ROUTING_ID), ‘‘) INTO V_ROUTING ...

MySQL、Oracle和SQL Server的分页查询语句【代码】

假设当前是第PageNo页,每页有PageSize条记录,现在分别用Mysql、Oracle和SQL Server分页查询student表。1、Mysql的分页查询: 1 SELECT 2 * 3 FROM 4 student 5 LIMIT (PageNo - 1) * PageSize,PageSize;理解:(Limit n,m) =>从第n行开始取m条记录,n从0开始算。2、Oracel的分页查询: 1 SELECT2 *3 FROM4 (5 SELECT6 ROWNUM rn ,*7 FROM8 student9 WHERE 10 ...

Oracle SQL语句大全(二)【代码】

avg(sal) desc; 查找部门中平均薪水打印2000的员工并按部门号进行排序,查询分组后的平均薪水必须大于1500,查询结果按平均薪水从低到高排列 49.select ename from emp where sal>(select avg(sal) from emp); 查找出员工中薪水位于部门平均薪水之上的所有员工 50.select ename,sal from emp join(select max(sal) max_sal from emp group by deptno) t on(emp.sal=t,max_sal and emp.deptno=t.deptno); 查找每个部门中...

oracle sql优化技巧

数据库方面一直是自己的薄弱项,现在以本文慢慢积累总结oracle sql优化的一些技巧。1.首先大家很容易想到的一切优化技巧--索引,索引有啥用?索引在表数据量很大时添加索引确实能加快查询速度,通过索引查询能很好地避免全表扫描。 但应该也要注意的时这是在数据量较大的时候。同时数据较小时,反而浪费索引空间。另外,添加索引之后数据的插入,更新反而会变慢,在插入或修改记录 时需要新建索引并排序。 索引创建语句: c...

Where does Oracle SQL Developer store connections? oracle SQL Developer 连接信息保存的位置,什么地方

oracle SQL Developer 连接信息保存的位置,在什么地方?在切换登录用户后,oracle SQL Developer 连接信息不见了。只要以前的用户信息还存在,可以在路径 C:\Users\用户名\AppData\Roaming\SQL Developer\system2.1.1.64.45\o.jdeveloper.db.connection.11.1.1.2.36.55.30找到连接信息。 参考信息 http://stackoverflow.com/questions/7954759/where-does-oracle-sql-developer-store-connections原文:http://www.cnblogs.com/ks...

Oracle SQL Developer官方工具 初探【图】

查询表数据(打开工作表:Alt+F10)运行SQL语句:(格式化:Ctrl+F7)自动完成语句的设置自动弹出的速度加快,并且将命中率提高,进行如下设置:由于我的输入法占用了CTRL+,的快捷建,我将自动“完成设置”的快捷卡设置成Ctrl+空格。下载链接:sqldeveloper-18.3.0.277.2354-x64链接:https://pan.baidu.com/s/1r97wBrijsJxuPHm2k9MBmw 提取码:eojl 原文:https://www.cnblogs.com/springsnow/p/9988052.html