-- number(38)
-- char(2000)
-- varchar(4000) create table student(
sno number(3) primary key,
sname varchar2(40) default ('佚名'),
sex char(2) check(sex in('男', '女', '中')),
age number(2) check( age between 20 and 30 ),
birthday date,
sclass varchar2(10)
); -- insert delete update
-- 事务: 一组相关的操作
-- commit 提交事务
-- rollback 回滚事务 -- 添加数据
-- 格式1: insert into 表 values(所有列的值); insert into stuinsert into student values(1, 'jack', '男', 23, null, 'ab11');dent values(1, 'jack', '男', 23, null, 'ab11');
insert into student values(2, 'tom', '男', 21, null, 'ab12');
commit; -- 格式2: insert into 表(指定列) values(指定列的值);
insert into student(sno, sname, birthday) values(3, 'mary', '7-7月-2017');
insert into student(sno, sname, birthday) values(4, 'mary', to_date('2017-06-10', 'yyyy-mm-dd'));
commit; select * from student; -- 修改数据 update
-- 格式: update 表 set 列=新值,... [where clause] -- 把吴丹阳的年龄减小2岁,手机号改为13888888888
update studentinfo set s_age = s_age - 2, s_tel = '13888888888' where s_name = '吴丹阳';
commit; select * from studentinfo s;
-- 删除数据 delete
-- 格式: delete from 表 [where clause] -- 删除吴丹阳的学生信息
delete from studentinfo where s_name = '吴丹阳';
commit; -- 查询数据 select
-- select 列 from 表 [where clause];
select * from classinfo c;
select * from studentinfo s;
select * from teacherinfo t; -- 查询年龄大于23岁的男生的信息
select * from studentinfo s where s.s_age > 23 and s.s_sex = '男'; -- 查询家庭地址为空的学生信息
select * from studentinfo s where s.s_address is null; -- 查询毕业学校不为空的学生信息
-- is null
-- is not null
select * from studentinfo s where s.s_school is not null;
select * from studentinfo s where not s.s_school is null; -- 查询年龄大于24的本科生信息
select * from studentinfo s where s.s_age > 24 and s.s_xueli = '本科'; -- 查询年龄是19,24,26的学生信息
select *
from studentinfo s
where s.s_age = 19
or s.s_age = 24
or s.s_age = 26; select * from studentinfo s where s.s_age in (19, 24, 26); -- = any() 等于括号里的任何一个值
select * from studentinfo s where s.s_age = any(19, 24, 26); -- > any() 大于最小值
select * from studentinfo s where s.s_age > any(22, 24, 26); -- < any() 小于最大值
select * from studentinfo s where s.s_age < any(22, 24, 26); -- > all() 大于最大值
select * from studentinfo s where s.s_age > all(22, 24, 26); -- < all() 小于最小值
select * from studentinfo s where s.s_age > all(22, 24, 26); -- distinct 去除查询结果重复值
-- all 不去除查询结果重复值 -- 查询所有的学历
select distinct s.s_xueli from studentinfo s; select all s.s_xueli from studentinfo s; select distinct s.s_xueli, s.s_sex from studentinfo s; -- order by 排序
-- order by 列 [asc(默认方式)|desc] -- 查询所有学生的姓名和年龄,并按照年龄降序排序
select s.s_name, s.s_age from studentinfo s order by s.s_age desc; -- 模糊查询 -- % 匹配任意多个字符
-- _ 匹配一个字符 -- 查询以S字符开头的所有员工姓名
select e.ename from emp e where e.ename like 'S%'; -- 查询以S字符结尾的所有员工姓名
select e.ename from emp e where e.ename like '%S'; -- 查询包含S字符的所有员工姓名
select e.ename from emp e where e.ename like '%S%'; -- 查询名字包含5个字符的员工姓名
select e.ename from emp e where e.ename like '_____'; -- 查询名字以S字符开始且包含5个字符的员工姓名
select e.ename from emp e where e.ename like 'S____'; ------------- 子查询 --------------
--emp 员工信息表(employee)
-- empno 员工编号
-- ename 员工姓名
-- job 职位
-- mgr 主管员工编号(manager)
-- hiredate 入职日期
-- sal 工资(salary)
-- comm 提成
-- deptno 部门编号(department number) -- dept 部门信息表(department)
-- deptno 部门编号
-- dname 部门名字
-- loc 上班地点 (location) select * from emp e;
select * from dept d; --查询SMITH所在部门的名字 select d.dname
from dept d
where d.deptno = (select e.deptno from emp e where e.ename = 'SMITH'); -- 查询SMITH的主管名字 select a.ename
from emp a
where a.empno = (select b.mgr from emp b where b.ename = 'SMITH'); select * from emp e;
-- 查询工资高于1600的员工信息
select * from emp e where e.sal > 1600; -- 查询工资高于ALLEN的员工信息
select * from emp e where e.sal > (select sal from emp where ename='ALLEN') ; -- 查询工资高于30号部门所有人的员工信息 select *
from emp e
where sal > all(select sal from emp where deptno = 30); -- 查询销售部(SALES)的员工姓名 select e.ename
from emp e
where e.deptno = (select d.deptno from dept d where d.dname = 'SALES'); -- 查询销售部的工资高于1300的员工姓名
select e.ename
from emp e
where e.sal > 1300
and e.deptno = (select d.deptno from dept d where d.dname = 'SALES'); -- 伪列 rowid,rownum
-- rowid 行id,标示该行的物理存储位置
-- rownum 行编号
select rowid,rownum,e.* from emp e; -- 分页查询 -- 查询员工表前三行
select * from emp e where rownum <= 3; --查询员工表第三行到第五行
select a.*
from (select rownum r, e.* from emp e) a
where r >= 3
and r <= 5; -- 查询工资最高的三个员工信息 -- 先筛选数据,再对选出的数据(行)排序
--select * from emp e where rownum <= 3 order by e.sal desc;
select * from (select * from emp order by sal desc) e where rownum <= 3; --按照工资降序排序,查询员工表第三行到第五行
select a.*
from (select rownum r, e.* from (select * from emp order by sal desc) e) a
where r >= 3
and r <= 5;

oracle 常用语句2的更多相关文章

  1. ORACLE常用语句:

    ORACLE常用语句: 1.首先,创建(新)用户: create user username identified by password; username:新用户名的用户名 password: 新 ...

  2. Oracle常用语句集合

    oracle常用经典SQL查询 常用SQL查询: .查看表空间的名称及大小 )),) ts_size from dba_tablespaces t, dba_data_files d where t. ...

  3. Oracle常用语句

    Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, ...

  4. Oracle常用语句语法汇总

    第一篇  基本操作 --解锁用户   alter user 用户 account unlock; --锁定用户   alter user 用户 account lock; alter user sco ...

  5. oracle常用语句总结

    一.用户管理类 1.创建用户: Create user username Identified by password Default tablespace tablespacename Tempor ...

  6. oracle 常用语句

    创建用户及授权create temporary tablespace test_temp tempfile 'C:\oracle\product\10.2.0\oradata\hszxdbtemp.d ...

  7. oracle 常用语句3

    - oracle 函数 select sign(-3),sign(3), sign(0) from dual; select ceil(3.7) from dual; select floor(3.7 ...

  8. Oracle 常用语句1

    -- 我是注释信息 sql语句 -- 创建用户: create user 用户名 identified by 密码; create user jack identified by j123; -- l ...

  9. 查锁住的表,以及kill进程,Oracle常用语句

    --找出所有被锁的对象,定位出哪个回话占用 select l.session_id,o.owner,o.object_name from v$locked_object l,dba_objects o ...

  10. Oracle 常用语句备份

    1.oracle 11g 用户名和密码默认区分大小写,可更改alter system set sec_case_sensitive_logon=false 设置改为不区分大小写. 2.授权创建视图:G ...

随机推荐

  1. 防sql注入函数

  2. C#设计模式-外观模式(Facade Pattern)

    引言 在软件测试中,一般都是在功能测试稳定的情况下再进行UI自动化测试.或者进行性能测试.如果一个一个进行太麻烦,此时可以使用对外提供一个简单接口,通过这个接口可以访问内部一群接口.例如进行UI自动化 ...

  3. Vegas实战——如何导入导出视频

    Vegas作为一款专业的视频非编软件,在国内受到了很多用户的喜爱.小编认为,对于很多用户来说,他们选择sony vegas的一个原因是vegas在不论是从产品性能,还是使用效果上,都很容易被用户接受. ...

  4. 理解与使用Treiber Stack

    目录 背景 名称由来 CompletableFuture源码实现 FutureTask实现 Treiber Stack抽象实现 入栈 出栈 示例 参考 背景 最近在很多JDK源码中都看到了Treibe ...

  5. python 工业日志模块 未来的python日志最佳实践

    目录 介绍 好的功能 安装方法 参数介绍 呆log 参数与 使用方法 版本说明 后期版本规划 todo 感谢 介绍 呆log:工业中,python日志模块,安装即用.理论上支持 python2, py ...

  6. [转载]Windows环境下 Hadoop Error: JAVA_HOME is incorrectly set. 问题

    最近尝试在windows开发MR程序并且提交Job,在解压缩好hadoop,配置好环境变量后, 打开cmd 输入hadoop version 的时候出现以下错误: Error: JAVA_HOME i ...

  7. 使用OwnCloud建立属于自己私有的云存储网盘

    1.需要LAMP架构 实验环境:centos7.4 64位系统[root@xuegod63 ~]# yum install -y httpd php php-mysql mariadb-server ...

  8. C和指针课后练习题4

    1.下面表达式是否合法?如果合法,他执行什么任务? 3* x * x - 4 * x + 6; 合法;他只是执行了表达式求值,但是他的结果并不存于任何地方. 2.赋值语句的语法? 数据类型 变量名 = ...

  9. 强大的拉姆表达式转Sql 类库 - SqlSugar 隐藏功能之Lambda

    使用场景 1.Lambda to sql 一直是ORM中最难的功能之一,如果有现成的解析库那么自已写一个ORM难度将大大降低 2.通过Lambda作为KEY进行缓存操作,特别是仓储模式想要拿到表达式进 ...

  10. 老猿学5G扫盲贴:中国移动5G融合计费漫游计费架构和路由方案

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...