常用关键字

insert into---插入数据

delete---删除数据

update---更新一条数据

select---实际工作中尽量不要写*

set---设置某些属性

where---给执行的语句加限制条件

--增加信息 1
insert into p_dept(deptno,dname,loc)
,'ceshi','ceshi');
commit;
--增加信息 2
insert into p_dept
,'ceshi','ceshi');
commit;
--增加信息 3
insert into p_dept(deptno)
);
commit;

--查询
select t.*, t.rowid from P_DEPT t
select *, t.rowid from P_DEPT
select t.deptno from P_DEPT t where t.dname='SALES'

--修改deptno为60的数据dname为ceshi2

--删除数据
;
commit;

in---在某个范围内

--查询工资是800和3000的
,)

like(%, _)---模糊查询, %表示任意个字符, _表示单个字符

--查询name是T 开头的
select * from p_emp t where t.ename like 'T%'
--查询name是T 开头,后面三个字符的
select * from p_emp t where t.ename like 'T___'

order by---(列名或者写索引:1, 2) ASC正序(默认)  DESC倒叙

--按照工资排序
select * from p_emp e order by e.sal
--按照职位和工资排序,工资要大到小
select * from p_emp e order by e.job,e.sal desc
--按照第一列排序

group by---按照某几列分组

having---分组之后的过滤

--按照职位分组
select e.job from p_emp e group by e.job
--按照职位分组,查人数大于2的

case...when...---类似于分支

--sex为1=男,0=女
  then '男' else '保密' end 性别 from  p_emp e
--另一种写法
  then '男' else '保密' end from  p_emp e

distinct---去除重复

--去重复
select distinct e.job from p_emp e

between...and(闭合区间, 即包括前面的数, 也包括后面的数)

--查工资在800-3000的
 

all---表示一个集合中所有的元素

any/some---表示一个集合中任意一个元素

--查询工资最高的
select * from p_emp t where t.sal >=all(select t1.sal from p_emp t1)

常用函数
to_char---转换成字符型数据

to_date---转换成日期型数据

--日期与字符转换,dual为虚拟表
select to_char(t.hiredate,'yyyy-mm-dd') from p_emp t
select to_date('1994-10-20','yyyy-mm-dd') from dual
--计算时间差
select to_date('1994-10-20','yyyy-mm-dd')-sysdate from dual
--查询1990之后出生
','yyyymmdd')

分组函数:

mod---取余函数

avg---平均数函数

sum---求和函数

count---计数函数

--计算每个工作的总工资,平均工资,人数  分组
select t.job,sum(t.sal),avg(t.sal),count(t.ename) from p_emp t group by t.job

decode---类似于分支语句的函数

--查询性别
,,'女','保密') from p_emp e

substr---分割字符串

--分割name
) from p_emp e

max---取最大值函数

min---取最小值函数

--查询最高,最低工资
select max(e.sal) from p_emp e
select min(e.sal) from p_emp e

trunc---取整函数

ceil---向上取整函数

floor---向下取整

--取整,向上,向下 可用于日期
select trunc(12.345) from dual

select trunc(sysdate) from dual

select ceil(12.345) from dual

select floor(12.345) from dual

nvl---过滤空值函数

nvl2---过滤空值函数2

--过滤空值为0,只能处理数字
) from p_emp e
select avg(e.comm) from p_emp e --除以不为空的人数
)) from p_emp e  --除以总人数
--可以处理字符串,传三个参数
select nvl2(e.comm,'为空','不为空') from p_emp e

lower---将字母全部改为小写

upper---改为大写

concat---连接两个字符串

? wm_concat---列转行函数(也属于分组函数)

--只能连接两个字符串
select concat('aaa','bbb') from dual
select wm_concat() from --不推荐使用,将一列值链接可分租

Oracle数据库常用关键字以及函数的更多相关文章

  1. oracle数据库常用查询一

    oracle数据库常用查询一 sqlplus / as sysdba; 或sqlplus sys/密码 as sysdba;两者都是以sys登录.conn scott/tiger@orcl; conn ...

  2. Oracle数据库常用的Sql语句整理

    Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...

  3. ORACLE数据库常用查询二

    ORACLE数据库常用查询 1.查看表空间对应数据文件情况: SQL MB,AUTOEXTENSIBLE FROM DBA_DATA_FILES; TABLESPACE_NAME FILE_NAME ...

  4. .Net 中读写Oracle数据库常用两种方式

    .net中连接Oracle 的两种方式:OracleClient,OleDb转载 2015年04月24日 00:00:24 10820.Net 中读写Oracle数据库常用两种方式:OracleCli ...

  5. oracle常用关键字和函数

    数据库的增删改查: 增:insert into ... values(); 例:insert into p_emp values(sq_emp.nextval,,sysdate,,null,,); c ...

  6. Oracle数据库常用Sql语句大全

    一,数据控制语句 (DML) 部分 1.INSERT  (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSE ...

  7. oracle数据库常用plsql语句

    (一)oracle中常用的数据类型 (二)PL-sql基本语法 1.创建数据库表.删除数据库表 create table table1--创建表 ( field1 number(8), field2 ...

  8. oracle数据库常用SQL语句(11.29更新)

    笔者日常工作中常用到的sql语句,现总结如下,留作日后查看. 1.按照两列中的最大值取 ,只取两列其中的一列 SELECT * FROM t_doc T ORDER BY GREATEST(T.Loa ...

  9. ORACLE数据库 常用命令和Sql常用语句

    ORACLE 账号相关 如何获取表及权限 1.COPY表空间backup scottexp登录管理员账号system2.创建用户 create user han identified(认证) by m ...

随机推荐

  1. 设置Ubuntu下adb 及 fastboot权限

    以普通用户登录linux,然后运行adb devices会提示权限不够: List of devices attached  ????????????    no permissions   这是因为 ...

  2. maven下载jar包失败后无法再次重新下载

    maven下载jar包失败后无法再次重新下载:删除maven 资源库中的 *.lastUpdated文件

  3. Python对数据库的增删改查

    #!/usr/bin/env python   import MySQLdb   DATABASE_NAME = 'hero'   class HeroDB:     # init class and ...

  4. CSS3学习系列之动画

    Transitions功能使用方法 在css3中,transitions功能通过将元素的某个属性从一个属性值在指定的时间内平滑过渡到另一个属性值来实现动画功能,可通过transitions属性来使用t ...

  5. Photoshop制作雪碧图技巧

    雪碧图,就是将网页制作中使用的多个小图片合并成一个图片,使用css技术将这张合成的图片应用在网页不同的地方. 雪碧图可以减少网页加载时的http请求数,优化网页性能. 步骤: a.使用Photosho ...

  6. Vijos 1034 家族 并查集

    描述 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系. 规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚.如果x,y是亲戚 ...

  7. Educational Codeforces Round 22.B 暴力

    B. The Golden Age time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  8. 闭包JS

    一句话概括的话:闭包就是一个函数,捕获作用域内的外部绑定. 官方的定义:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因为这些变量也称为该表达式的一部分. 自由变量和闭包的关系:自 ...

  9. usaco training 3.4.3 fence9 题解

    Electric Fence题解 Don Piele In this problem, `lattice points' in the plane are points with integer co ...

  10. ORM的概念, ORM到底是什么

    一.ORM简介         对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术.简单的说,ORM是通过使 ...