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的更多相关文章

  1. Datatypes translation between Oracle and SQL Server

    Datatypes translation between Oracle and SQL Server part 1: character, binary strings Datatypes tran ...

  2. 使用yum快速部署Oracle安装环境(11g)

    基于Linux安装过Oracle的童鞋们都应该清楚,安装Oracle的确是一件比较费时费力的差事,因为仅仅是前期的rpm包,内核参数,创建用户等等这些个步骤都让那些新手不免眼花缭乱,一不留神,就导致最 ...

  3. Oracle RAC 客户端连接负载均衡(Load Balance)

    实现负载均衡(Load Balance)是Oracle RAC最重要的特性之一,主要是把负载平均分配到集群中的各个节点,以提高系统的整体吞吐能力.通常情况下有两种方式来实现负载均衡,一个是基于客户端连 ...

  4. Oracle Enterprise linux 7 安装Oracle11gR2

    一.修改主机名和IP地址: [root@localhost Desktop]# cat /etc/hosts127.0.0.1 localhost.localdomain localhost 192. ...

  5. Spark:导入数据到oracle

    方案一: //overwrite JdbcDialect fitting for Oracle val OracleDialect = new JdbcDialect { override def c ...

  6. Oracle Metalink Notes Collection

    INV Note 123456.1 Latest 11i Applications Recommended Patch List Note 568012.1:FAQ: Inventory Standa ...

  7. Linux Oracle安装

    lsnrctl status  // 查看linux系统oracle的监听状态lsnrctl start   // 启动linux系统oracle的监听状态 sqlplus /nolog  // 连接 ...

  8. Oracle通过dblink连接MySQL

    需要把MySQL的一些数据同步到Oracle,用ETL工具太麻烦了,通过参考官方文档实现了oracle to mysql dblink.每次修改配置后,需要重启监听才能生效,或者 reload一下,确 ...

  9. CentOS 设置 oracle 开机自动启动

    CentOS 设置 oracle 开机自动启动 1. [root@localhost ~]# gedit /etc/oratab 文件内容为: # # This file is used by ORA ...

随机推荐

  1. Bootstrap3基础 table-condensed 表格中的单元格紧凑一些

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  2. centos6.5换yum源

    centos换yum源要借助wget,要先安装wget 输入yum -y install wget命令以安装wget 若安装wget失败或卡死, ctrl+z,ps -ef | grep yum,之后 ...

  3. 同事在使用shiro后遇到的异常

    一切配置按照demo来的,给他讲了一遍捋顺了.然后之前他做的demohim按照他网络摘抄的shiro博客看的. 然后注册了,正常,登录,提示密码不匹配. 问题出在注册的密码加密次数是2, 而shiro ...

  4. 命令行找不到genstrings问题tip

    问题:初次使用命令行genstrings,提示使用的是命令行工具而非xcode,无法直接使用genstrings. 解决方案:命令行输入sudo xcode-select --switch /Appl ...

  5. 使用python内置库pytesseract实现图片验证码的识别

    环境准备: 1.安装Tesseract模块 git文档地址:https://digi.bib.uni-mannheim.de/tesseract/ 下载后就是一个exe安装包,直接右击安装即可,安装完 ...

  6. .gitignore无效

    有个别文件不想跟踪,比如pycharm的配置文件. 但是这个文件已经被git跟踪的情况下,再加入.gitignore是无效的. 只需要: git rm --cached .idea/workspace ...

  7. phpmyadmin-您可能正在上传很大的文件,请参考文档来寻找解决方法

    phpmyadmin-您可能正在上传很大的文件,请参考文档来寻找解决方法   实这个很简单的只要更改php.ini里三个配置即可.(见下面加粗部分,改成你自己的需求即可) ; Maximum allo ...

  8. SQL SERVER 查看sql语句性能与执行时间

    [方法一] set statistics profile on set statistics io on set statistics time on go --sql语句 go set statis ...

  9. 『TensorFlow』读书笔记_SoftMax分类器

    开坑之前 今年3.4月份的时候就买了这本书,同时还买了另外一本更为浅显的书,当时读不懂这本,所以一度以为这本书很一般,前些日子看见知乎有人推荐它,也就拿出来翻翻看,发现写的的确蛮好,只是稍微深一点,当 ...

  10. 关于IDEA每次修改HTML,Css等静态资源文件都需要重启的设置修改

    ~ ~ ~ ~ ~ 关于IDEA每次修改HTML,Css等静态资源文件都需要重启的设置修改 最近开始使用IDEA进行项目开发,但是对于每次修改HTML文件中css和js文件之后都必须重启服务这件事表示 ...