-- 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. ERP应收应付进阶操作与子流程--开源软件诞生29

    赤龙ERP应收应付进阶讲解--第29篇 用日志记录"开源软件"的诞生 [进入地址 点亮星星]----祈盼着一个鼓励 博主开源地址: 码云:https://gitee.com/red ...

  2. [大雾雾雾雾] 告别该死的 EFCore Fluent API (续)

    朋友们好啊, 我是 .NET 打工人 玩双截棍的熊猫 刚才有个朋友问我 猫猫发生什么事了 我说 怎么回事? 给我发了一张截图 我一看!嗷!原来是zuo天有两个数据库, 一个四十多岁,一个三十多岁 它们 ...

  3. objetive-C中属性变量和成员变量

    属性变量 @property和@synthesize可以自动生成某个类成员变量的存取方法. readwrite:这个属性是默认的情况,会自动生成存取器 assign:这个属性一般用来处理基础类型,比如 ...

  4. centos 7 安装zabbix-4.0

    第一步:安装nginx ############安装Nginx###########yum localinstall http://nginx.org/packages/centos/7/noarch ...

  5. Django踩坑记录3

    路径如下: admin.py的代码: from django.contrib import admin from sign.models import Event,Guest # Register y ...

  6. docker 中的mysql启动端口号总是被占用解决

    解决: 1 查 netstat -lnp|grep 3306 2 杀 kill -9 3819 3 再查 netstat -lnp|grep 3306 4 发现还有,杀不尽 5 重启docker 6 ...

  7. 锐安信sslTrus与GeoTrust SSL证书的对比

    当您想要为您的网站购买一款SSL证书时,是不是既想要价格便宜,又想要安全性能服务好的证书,最后又在品牌上犹豫不决?如何选择SSL证书?哪款SSL证书是最适合您的?本文将详细对比分析锐成信息平台上畅销品 ...

  8. 浅谈JAVA servlet

    1.servlet是什么? servlet的本质是接口,接口就是一种规范.我们来看一下servlet接口中都有哪些函数: 图片来源:https://www.cnblogs.com/whgk/p/639 ...

  9. 推荐系统实践 0x0a 冷启动问题

    什么是冷启动问题 如何在没有大量用户数据的情况下设计个性化推荐系统并且让用户对推荐结果满意从而愿意使用推荐系统,就是冷启动问题.冷启动问题主要分为三类: 用户冷启动 物品冷启动 系统冷启动 下面我们将 ...

  10. fist-第五天冲刺随笔

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2018SE1 这个作业要求在哪里 https://edu.cnblogs.com/campus/fz ...