1:解锁用户
alter user 用户名 account unlock;

2:获取系统时间、随机数
select sysdate, sys_guid() from dual;

3:起别名,使可读性更强,如果想保留字段原来模样,可以
使用双引号括起来
select ename,salary*12 from emp;
select ename,salary*12 annuary_sal from emp;
select ename,salary*12 as annuary_sal from emp;
select ename,salary*12 "annuary sal" from emp;

4:空值
select ename,sal*12+comm from emp;如果算术表达式中有值为null,那么表达式的值就是null
select ename,sal*12+nvl(comm,0) from emp;nvl()函数,如果有值就计算值,为null则替换为0

5:连接符|| ,concat
select ename||sal from emp;
select concat(ename,sal) from emp;

6:数据内部存在单引号',使用两个单引号代替一个单引号
select 'i''m lilei!' from dual;

7:distinct去除数据中重复值
select distinct deptno from emp; --获取不重复的deptno的值
select distinct deptno,job from emp; --当distinct修饰两个及以上字段时,表示修饰字段组合不重复

8:条件查询where
select ename,sal from emp where sal>5000; --查询薪水大于5000的员工
select ename,sal from emp where sal<5000; --查询薪水小于5000的员工
select ename,sal from emp where sal<>5000; --查询薪水不等于5000的员工
select ename,sal from emp where sal>=2000 and sal<=7000; --查询薪水大于等于2000,并且小于等于7000的员工
select ename,sal from emp where sal between 2000 and 7000;--同上
select ename,sal from emp where comm is null;--查询奖金为null的员工
select ename,sal from emp where comm is not null;--查询奖金不为null的员工
注意:null在where后面作为条件时用is ,但是update后面修改值时用=

9:in 查询一个字段对应的多个值
select ename,deptno from emp where deptno in(10,20); --查询部门编号为10或者20的员工
select ename,deptno from emp where deptno not in(10,20); --查询部门编号不为10或者20的员工

10:and 同时,or 或者,not 取反
select ename ,deptno from emp where deptno=10 and sal>5000;--查询部门编号为10,同时薪水大于5000的员工
select ename ,deptno from emp where deptno=10 or sal>5000; --查询部门编号为10 或者薪水大于5000的员工

11:模糊查询like %匹配多个字符 _匹配一个字符
select ename from emp where ename like '%a%'; --查询名字中包含a的员工
select ename from emp where ename like '_a&'; --查询名字第二个字符为a的员工
select ename from emp where ename like '%\%%'; --如果名字中包括%,那么就需要转义,默认是\,也可以指定,如下
select ename from emp where ename like '%$%%' escape '$' --指定$符号为转义字符

12:排序 order by asc desc
select * from dept order by deptno; --按照deptno排序,默认是升序(asc)
等效于 select * from dept order by deptno asc;

select * from dept where deptno=10 order by dname;--和where组合使用,先筛选出deptno为10的部门,在按照部门名称排序。

select * from dept where deptno=10 order by dname asc,loc desc;--先按照部门名称升序排序,如果部门名称中有相同的,在按照
地址降序排列。

13:常用的sql函数

select lower(ename) from emp; --lower():转换为小写

select upper(ename) from emp; --upper():转换为大写

select substr(ename,1,3) from emp;--从ename字段1开始,截取长度为3的子串 substr():获取子串

select chr(97) from dual; --chr():将数字转换为对应的字符

select ascii('a') from dual; --ascii():将字符转换为ascii码

select round(2.35,1) from dual;--精确到小数点后1位 pound():四舍五入
select round(2.35) from dual;--默认精确到整数

select to_char(sal,'$999,999.9999') from emp; --将数字转换为字符串,以$符开头,999的格式,L代表本地化货币

select to_char(sysdate,'yyyy-MM-dd HH:mm:ss') from dual; --将日期格式转换为字符串 12小时制
select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual; -- 24小时制

oracle学习总结1的更多相关文章

  1. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  2. Oracle学习线路

    出自huyangg的博客,地址是:oracle学习路线图 1.sql.pl/sql(网上有很多的视频,可以做一个简单的入手,然后看几本书,多做实验)    作为oracle的基本功,需要大家对sql和 ...

  3. Oracle学习指南

    Oracle学习指南 你走的那天,我决定不落泪,迎着风撑着眼帘用力不眨眼 创建数据库.创建用户.创建表空间.创建表.插入数据..... 1.用系统用户登录,任选系统用户 代码: >>sql ...

  4. Oracle学习系列1-7

    Oracle学习系列1 两个服务必须启动: OracleOraDb10g*TNListener 和 OracleService*** 使用sqlplusw先进行环境的设置 set linesize 3 ...

  5. Oracle学习系列7

    Oracle学习系列7 ************************************************************************************ 关联表 ...

  6. Oracle学习系列6

    Oracle学习系列6 ************************************************************************************ 删除约 ...

  7. Oracle学习系列5

    Oracle学习系列5 ************************************************************************************ ,掌握 ...

  8. Oracle学习系列4

    Oracle学习系列4 ************************************************************************************ 数据库 ...

  9. Oracle学习系列3

    Oracle学习系列3 ************************************************************************************ 多表查 ...

  10. oracle学习笔记(一)用户管理

    --oracle学习第一天 --连接 @后面连接数据库实例,具体连接到那个数据库 conn scott/tiger@MYORA1; --修改密码 passw; --显示用户 show user; -- ...

随机推荐

  1. selenium IDE & Remote Control & Webdriver

    一直忘记写selenium的开始学习的过程,今天趁五一,天气有雨,写下这文章 1.进入selnium官网,了解selenium1,2,grid的区别.下载c#相关的包(使用c#的人非常少) 2.使用I ...

  2. longblogV1.0——我的静态博客发布系统

    longblogV1.0——我的静态博客发布系统 环境依赖: python3-markdown 作者:IT小小龙个人主页:http://long_python.gitcafe.com/电子邮箱:lon ...

  3. <转>堆和栈的区别

    http://blog.csdn.net/hairetz/article/details/4141043 一.预备知识—程序的内存分配    一个由C/C++编译的程序占用的内存分为以下几个部分    ...

  4. MFC文档、视图和框架

    文档.视图.框架 文档/视图结构是MFC提供的一种不错的设计,它将数据的处理和显示分开来,这样更便于我们对程序的维护和扩展. 文档        文档对象用于管理和维护数据,包括保存数据.取出数据以及 ...

  5. bzoj 1411 [ZJOI2009]硬币游戏

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1411 [题意] N个硬币放在一个有2*N个位置的圆桌上,求T次操作后的情况.对于一个操 ...

  6. NOIP2009 靶形数独

    4.靶形数独 (sudoku.pas/c/cpp) [问题描述] 小城和小华都是热爱数学的好学生, 近,他们不约而同地迷上了数独游戏,好胜的他们想用数独来一比高低.但普通的数独对他们来说都过于简单了, ...

  7. c++拼接字符串效率比较(+=、append、stringstream、sprintf)

    转自:http://www.cnblogs.com/james6176/p/3222671.html c++拼接字符串效率比较(+=.append.stringstream.sprintf) 最近写的 ...

  8. xerox Network system

    XNS协议 IPX/SPX 是基于施乐的XEROX’S Network System(XNS)协议,而SPX是基于施乐的XEROX’S SPP(Sequenced Packet Protocol:顺序 ...

  9. WebAPI 小知识

    1.HttpResponseMessage.ReasonPhrase可以返回原因说明短语, 用JQuery中的$.ajax调用,返回函数第三个参数可以获取,如下: success:function(d ...

  10. 说说单节点集群里安装hive、3\5节点集群里安装hive的诡异区别

    这几天,无意之间,被这件事情给迷惑,不解!先暂时贴于此,以后再解决! 详细问题如下: 在hive的安装目录下(我这里是 /home/hadoop/app/hive-1.2.1),hive的安装目录的l ...