oracle note
null
- null为无效的,未指定的,未知的活不可预知的值
- null不是空格或0
- 包含null 的数学表达式其结果都为空值
- null 永远!= null
判断某个字段为null,用 ename is null
- 如果集合中有null,可以使用in, 不能使用not in
- However, Oracle considers two nulls to be equal when evaluating a DECODE function
Oracle also considers two nulls to be equal if they appear in compound keys
字符串
- 字符串用 单引号
- 别名 双引号/不带引号,区别为前者其中可包含特殊字符,后者不能,推荐前者
- 连接符 || ,concat()连接函数
- select 'Hello' || 'World' from dual;
- select ename || '的薪水是' || sal from emp;
- 字符串和日期要包含在单引号中
- 字符串大小写敏感,日期格式敏感,默认格式为 '17-11月-81'
- 字符串可是select列表中的一个字符,数字,日期
- 修改日期格式:
- select * from v$nls_parameters;
- alter session system set NLS_DATE_FORMAT='yyyy-mm-dd';
关键字
- select 后的 distinct (deptno,ename) 作用于所有列
- between and : 含有边界, 小值在前,大值在后
- select * from emp where ename like '%_%' escape ''; -- 声明‘’为转义字符,查询ename中含有‘_’的员工
- order by 后面可+ 列名,表达式,别名,序号(从1开始),desc,asc作用于离其最近一列,
- asc 升序,由小到大,null最后,defaul
- desc 降续,由大到小,null最前
- select * from emp order by comm desc nulls last; --按奖金降序排列,所有null放最后
- drop:删除表
- delete:逐条删除记录,DML(可回滚),不会释放空间,undo空间,类似回收站,会产生碎片,即使提交事务也可闪回flashback
- truncate:先摧毁,在重建(不可回滚),会释放空间,不会产生碎片,不可闪回
- 去掉碎片:1.alter table move;2.导出,导入;
- 导入sql文件: @d:\temp\testdata.sql
- drop table test_tab purge; --删除表,且清空回收站
- set serveroutput on; -- 打开输出
- desc dbms_output; -- 显示包结构,包含的方法
- truncate table test_tab; 慢,因要释放空间,重建表
- delete from test_tab; 快
- 1
- create table emp10 as select * from emp where 1=2; --只拷贝表结构
- 修改表:添加列,修改列,删除列,重命名列
- alter table tab_name add ename varchar2(20)
- alter table tab_name modify ename varchar2(30)
- alter table tab_name drop column ename
- alter table tab_name rename column ename to new_name
- 重命名表
- rename test1 to test2
- drop table tab_name; --删到回收站
- show recyclebin; --显示回收站
- purge recyclebin; --清空回收站
- 不是所有人都有回收站,管理员无回收站
SQL优化
- 尽量使用列名, 少使用*
- where子句从右往左解析,在or中尽量把真条件放右,在and中尽量把假条件放右
oracle note的更多相关文章
- Datatypes translation between Oracle and SQL Server
Datatypes translation between Oracle and SQL Server part 1: character, binary strings Datatypes tran ...
- 使用yum快速部署Oracle安装环境(11g)
基于Linux安装过Oracle的童鞋们都应该清楚,安装Oracle的确是一件比较费时费力的差事,因为仅仅是前期的rpm包,内核参数,创建用户等等这些个步骤都让那些新手不免眼花缭乱,一不留神,就导致最 ...
- Oracle RAC 客户端连接负载均衡(Load Balance)
实现负载均衡(Load Balance)是Oracle RAC最重要的特性之一,主要是把负载平均分配到集群中的各个节点,以提高系统的整体吞吐能力.通常情况下有两种方式来实现负载均衡,一个是基于客户端连 ...
- Oracle Enterprise linux 7 安装Oracle11gR2
一.修改主机名和IP地址: [root@localhost Desktop]# cat /etc/hosts127.0.0.1 localhost.localdomain localhost 192. ...
- Spark:导入数据到oracle
方案一: //overwrite JdbcDialect fitting for Oracle val OracleDialect = new JdbcDialect { override def c ...
- Oracle Metalink Notes Collection
INV Note 123456.1 Latest 11i Applications Recommended Patch List Note 568012.1:FAQ: Inventory Standa ...
- Linux Oracle安装
lsnrctl status // 查看linux系统oracle的监听状态lsnrctl start // 启动linux系统oracle的监听状态 sqlplus /nolog // 连接 ...
- Oracle通过dblink连接MySQL
需要把MySQL的一些数据同步到Oracle,用ETL工具太麻烦了,通过参考官方文档实现了oracle to mysql dblink.每次修改配置后,需要重启监听才能生效,或者 reload一下,确 ...
- CentOS 设置 oracle 开机自动启动
CentOS 设置 oracle 开机自动启动 1. [root@localhost ~]# gedit /etc/oratab 文件内容为: # # This file is used by ORA ...
随机推荐
- flask --- 04 . 偏函数, 线程安全,栈堆,
一.偏函数(partial) ①第一种 结果为: ② 第二种 二.线程安全 将空间转换成时间 问题: 1秒钟打印所有结果 threading.current_thread().ident :线程ID ...
- Java基础学习-注释的概述和分类
/* 注释:用于解释说明程序的文字 分类: 单行:// 多行:/**/ 作用:解释说明程序,提高程序的阅读性 */ ...
- yansir的原生js库
var yansir = { //isInteger为true返回的是四舍五入后的整数 num:function(min,max,isInteger){ if(isInteger){ return M ...
- HDU - 1061-快速幂签到题
快速幂百度百科:快速幂就是快速算底数的n次幂.其时间复杂度为 O(log₂N), 与朴素的O(N)相比效率有了极大的提高. HDU - 1061 代码实现如下: import java.util.Sc ...
- 『PyTorch』第十五弹_torch.nn.Module的属性设置&查询
一.背景知识 python中两个属相相关方法 result = obj.name 会调用builtin函数getattr(obj,'name')查找对应属性,如果没有name属性则调用obj.__ge ...
- Java中char和String的相互转换
转自:http://blog.csdn.net/yaokai_assultmaster/article/details/52082763 Java中char是一个基本类型,而String是一个引用类型 ...
- border——边框属性
一.第一层次(复合样式) <style> p.one{border:1px solid black;} /*边框:1像素 实心的 黑色:*/ </style> <body ...
- Java中Annotation用法
其他还可以参考的地址 https://www.cnblogs.com/skywang12345/p/3344137.html Annotation Annotation其实是代码里的特殊标记,这些标记 ...
- 关于wincc与博图的安装问题
博图软件支持西门子1500CPU,但是在step7中不支持. 关于博图与wincc的安装顺序,在很多人觉得是没有安装顺序的,最好的安装顺序是: 先安装wincc,再安装博图 细节问题: 在安装博图时, ...
- 百度地图API---JS开发
百度地图API 开源地址:http://lbsyun.baidu.com/index.php?title=jspopular/guide/introduction#Https_.E8.AF.B4.E6 ...