oracle 数据库 if...elsif...语句】的更多相关文章

CREATE OR REPLACE FUNCTION "UFN_GETIDS" (    OPEKIND   IN   VARCHAR2,-- 查询类型    PARAMS IN VARCHAR2-- 查询字段 ) RETURN clob IS    str_return  clob;--varchar2(30000); BEGIN      if      OPEKIND = '1'   then        declare              Cursor cusor1 i…
一.说明 第一次使用Oracle,想做一些练习,熟悉一些oracle. 表:使用的是scott用户,默认的表 具体表讲解,可以参考该文档:https://www.cnblogs.com/xjcheng1/p/7220159.html 二.基础练习 第一.查询工资在0-1000,1000-2000,2000-3000,3000以上各个工资范围的员工数. SELECT SUM(CASE WHEN sal>0 AND sal<1000 THEN 1 ELSE 0 END) AS "0<…
业务需求说明:由于之前公司后台APP端有一个document表,该表中包含了所有的信息,新的需求就是通过该表创建出一个新的用户表(usertable)和一个档案表(document,该表只保留原document的部分字段). ps:原document表的数据有25万条的数据,因此在处理的时候,需要考虑到性能的问题. 首先当然是对两个表进行字段的设计,然后是再将原document表中的数据导入到这两个表中. 方案1:第一次采用的是最简单,最直接的方法,但是忽视了效率的问题. 方法是通过查询原doc…
笔者日常工作中常用到的sql语句,现总结如下,留作日后查看. 1.按照两列中的最大值取 ,只取两列其中的一列 SELECT * FROM t_doc T ORDER BY GREATEST(T.Load_Count,T.Read_Count) desc 2.取两列之和 select t.*,(nvl(T.Load_Count,0)+nvl(T.Read_Count,0 )) as c FROM t_doc T order by c desc 3.取两列字符串连接 select T.Load_Co…
一,数据控制语句 (DML) 部分 1.INSERT  (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSERT INTO 表名(字段名1, 字段名2, ……)  SELECT (字段名1, 字段名2, ……) FROM 另外的表名; 字符串类型的字段值必须用单引号括起来, 例如: ’GOOD DAY’ 如果字段值里包含单引号’ 需要进行字符串转换, 我们把它替换成两个单引号''. 字符串类型的字段值超过…
一.oracle常用数据类型 一.  数据定义语言(ddl) 数据定义语言ddl(data definition language)用于改变数据库结构,包括创建.更改和删除数据库对象. 用于操纵表结构的数据定义语言命令有: create table alter table truncate table drop table eg. --创建tb_stu表数据结构 create table tb_stu( id number, name varchar2(20) );   --修改tb_stu表数…
一.数据库的查询语句: 1.查询整个表: select * from 表名 例: 2.通过条件查询某一行数据: select * from 表名 where 字段名 例: 3.某一列数据去重查询: select distinct 字段名 from 表名 例: 4.查询的结果按某个字段升序或倒序排列:  select * from 表名 order by 字段名;                  在字段名的后面加desc为降序顺序排列 例: 5.查询某一列在某个范围内的数据: select *…
1.查询SCOTT表中有多少表,并显示表的一些描述select * from all_tables WHERE owner='SCOTT' ; 2.查询oracle数据库版本select * from v$version; select version from v$instance; select version FROM Product_component_version;…
一.Oracle数据库操作 1.创建数据库      create database databasename 2.删除数据库      drop database dbname 3.备份数据库 完全备份      exp demo/demo@orcl buffer=1024 file=d:\back.dmp full=y      demo:用户名.密码      buffer: 缓存大小      file: 具体的备份文件地址      full: 是否导出全部文件      ignore…
oracle的exp/imp命令用于实现对数据库的导出/导入操作;exp命令用于把数据从远程数据库服务器导到本地,生成.dmp文件;imp命令用于把本地的数据库.dmp文件从本地导入到远程的oracle数据库中 1 将数据库test完全导出.用户名system/manager导出到D:daochu.dmp 代码如下: exp system/manager@test file=d:daochu.dmp full=y 2.将数据库中system用户与sys用户的表导出代码如下: exp system…
https://www.jb51.net/article/125160.htm?utm_medium=referral  Python使用cx_Oracle调用Oracle存储过程的方法示例 https://www.jb51.net/article/139627.htm  Python使用cx_Oracle模块操作Oracle数据库 https://www.jb51.net/article/116017.htm  Oracle存储过程及调用 1.创建存储 带输入.输出参数的存储过程语法: cre…
(一)oracle中常用的数据类型 (二)PL-sql基本语法 1.创建数据库表.删除数据库表 create table table1--创建表 ( field1 number(8), field2 varchar2(251), field2 date ) drop table table2;--删除表 truncate table table3;--删除表中数据,并且立刻释放空间 delete fom table4;--删除表中数据,但是不能立刻释放空间 2.插入数据 eg1: insert…
在应用系统开发初期,由于开发数据库数据比较少,对于查询sql语句,复杂试图的编写等体会不出sql语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要问题之一.系统优化中一个很重要的方面就是sql语句的优化.对于海量数据,劣质sql语句和优质sql语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能实现其功能就行,而是要写出高质量的sql语句,提高系统的可用性. Oracle的sql调优第一个复杂的主题,甚至需要长…
新增字段:alter table 表名 add (NAME VARCHAR(12), NAME NUMBER(10) );--如果添加单个字段可以不用括号包起来,例如 alter table custinfo add sex char(1) 添加注释:comment on column 表名.name is '姓名'; 删除表字段:alter table 表名 drop column 字段名(列名); 修改字段名:alter table 表名 rename column 现列名 to 新列名;…
数据库: 命名规范问题 依然是 _流.看来也确实应该抽空 来处理一下 今天吧,不行时间不能浪费.要更加专注.累了 就睡,醒来 就 好好 弄东西.白天 哪怕累一些,强度 大一些,晚上也可以抽空出去.溜溜弯儿. 雷哥 问了一个 问题: Char 跟 varchar 有什么区别.如果 char 里面 定了4位.存了 一个 汉字,就是 两位.但是 在数据库空间依然是 4位.后面用空格补齐.但是 varchar 里面 假设定了 4位的长,存了一个 汉字 占了两位,这时候 在数据库中就只占2两位.所以 在空…
一.数据定义语句 CREATE:创建表或其它对象 create database test; //创建test数据库 ),sex )); //创建表 ALTER:修改表或其它对象的结构 )); //为表student 添加列 ALTER TABLE student DROP (addr); //为表student 删除列 )); //修改列 DROP:删除表或其它对象 drop table student; //删表 drop database test; //删库 TRUNCATE:删除表中的…
SELECT * FROM tb_clazz;SELECT * FROM tb_student; INSERT INTO tb_clazz(code,NAME,bzr) VALUES('1401','14计算机1班','廖老师');INSERT INTO tb_clazz(code,NAME,bzr) VALUES('1402','14计算机2班','谢老师'); INSERT INTO tb_student(ID,NAME,sex,age,phone,email,address)VALUES(…
一.导出: 导出语句: expdp sanyayun/sanyayun@syerpdb directory=DMP dumpfile=fooderp.dmp content=all SCHEMAS=sanyayun directory:文件夹名 注释:此文件夹名称并不是文件夹路径,而是为某个路径做的重命名 dumpfile:文件名称 SCHEMAS:导出模式(如果是用户名就是导出整个用户,如果是table就是指导出表) 创建文件夹语句: CREATE [OR REPLACE] DIRECTORY…
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少.但我们在开发.测试过程中,经常会遇到需要表复制的情况,如将 一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了. 1.INSERT INTO SELECT语句…
1)删除表的一列 ALTER TABLE 表名 DROP COLUMN 列名; 2)增加表的一列 且默认值为0 alter table 表名 add 字段名 类型 default '0'; 3)修改表的字段为NULL ALTER TABLE 表名 MODIFY 要修改的字段名字 NULL; 4)修改表的字段名 alter table 表名 rename column 原字段名 to 目标字段名; 5)创建视图 CREATE VIEW 视图名字AS sql语句 6)删除视图 drop view 视…
1.登陆SPL*PLUS [username/password] [@server] as [sysdba|sysoper] eg. system/password or connect sys/password as sysdba 2.查看登录用户 show user dba_users desc dba_users//展示表结构 select username from dba_users; 3.解锁用户 alter user username account unlock 4.表空间 数据…
1:安装readline包 yum install readline* 2:安装源码包: rlwrap-0.30.tar.gz    ./configure && make && make install 3:修改oracle用户的环境变量: alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman'…
CPU: select * from (select v.sql_id, v.child_number, v.sql_text, v.elapsed_time, v.cpu_time, v.disk_reads, rank() over(order by v.cpu_time desc) elapsed_rank from v$sql v) a where elapsed_rank 5 --100 0000微秒=1S AND S.PARSING_SCHEMA_NAME = USER AND TO…
--数据库连接 --普通用户连接:Conn scott/tiger --超级管理员连接:Conn "sys/sys as sysdba" --Disconnect; 断开连接 --DML 语句(数据操作语言)Insert.Update.Delete.Merge --DDL 语句(数据定义语言)Create.Alter.Drop.Truncate --DCL 语句(数据控制语言)Grant.Revoke --通配符 * select * from EMP; --where 条件 sele…
一.SQL基础查询 1.select语句 格式:select 字段 from 表名; 2.where 用于限制查询的结果. 3.查询条件 > < >= <= = != 4.与 或(AND,OR) 5.在 不在(IN,NOT IN) 练习:查询工号为1,9,11,16且工资低于1000的员工. 6.在 [a,b] (between val1 and val2) 查询工资大于1000,小于1500的员工. ; 7.空 非空(IS NULL,NOT NULL) 8.全部 任一(ALL,A…
1.[oracle@dbserver ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Tue Mar 15 15:16:03 2022Copyright (c) 1982, 2013, Oracle.  All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Product…
--表解锁select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode from v$locked_object lo, dba_objects ao, v$session sess where ao.object_id = lo.object_id and lo.session_id = sess.sid; alter system kill session…
--在某个用户下找所有的索引 select user_indexes.table_name, user_indexes.index_name,uniqueness, column_name from user_ind_columns, user_indexes where user_ind_columns.index_name = user_indexes.index_name and user_ind_columns.table_name = user_indexes.table_name o…
Oracle数据库中Select语句语法及介绍 SELECT [ ALL | DISTINCT ] <字段表达式1[,<字段表达式2[,…] FROM <表名1>,<表名2>[,…] [WHERE <筛选择条件表达式>] [GROUP BY <分组表达式> [HAVING<分组条件表达式>]] [ORDER BY <字段>[ASC | DESC]] 语句说明: []方括号为可选项 [GROUP BY <分组表达式&g…
 Oracle体系结构 ORACLE数据库体系结构决定了oracle如何使用网络.磁盘和内存.包括实例(instance),文件(file)和进程(process不包括后台进程)三部分. 实例:每一个运行的ORACLE数据库与一个ORACLE实例(INSTANCE)相联系.每一次在数据库服务器上启动一数据库时,称为系统全局区(SYSTEMGLOBAL AREA)的一内存区(简称SGA)被分配,有一个或多个ORACLE进程被启动.该SGA和ORACLE进程的结合称为一个ORACLE数据库实例.…