加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱制作网_沈阳站长网 (https://www.024zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

Oracle中scott表结构与简单查询实例分享

发布时间:2022-11-19 11:27:00 所属栏目:语言 来源:
导读:  本文实例讲述了Oracle中scott表结构与简单查询的方法。分享给大家供大家参考。具体分析如下:
  1、scott用户的表的结构
  查看表结构
  desc 表名;//desc emp;
  emp表:
  SQL> desc emp;
  
  本文实例讲述了Oracle中scott表结构与简单查询的方法。分享给大家供大家参考。具体分析如下:
  1、scott用户的表的结构
  查看表结构
  desc 表名;//desc emp;
  emp表:
  SQL> desc emp;
  名称 是否为空? 类型
  ----------------- -------- ------------
  EMPNO NOT NULL NUMBER(4) 雇员编号
  ENAME VARCHAR2(10) 雇员姓名
  JOB VARCHAR2(9) 雇员职位
  MGR NUMBER(4) 对应领导编号
  HIREDATE DATE 雇用日期
  SAL NUMBER(7,2) 基本工资
  COMM NUMBER(7,2) 奖金,佣金
  DEPTNO NUMBER(2) 部门编号
  dept表:
  SQL> desc dept;
  名称 是否为空? 类型
  ----------------- -------- ------------
  DEPTNO NOT NULL NUMBER(2) 部门编号
  DNAME VARCHAR2(14) 部门名称
  LOC VARCHAR2(13) 部门所在位置
  salgrade表:
  SQL> desc salgrade;
  名称 是否为空? 类型
  ----------------- -------- ----------
  GRADE NUMBER 工资等级
  LOSAL NUMBER 此等级最高工资
  HISAL NUMBER 此等级最高工资
  bonus表:
  SQL> desc bonus;
  名称 是否为空? 类型
  ----------------- -------- ------------
  ENAME VARCHAR2(10) 雇员姓名
  JOB VARCHAR2(9) 雇员职位
  SAL NUMBER 雇员工资
  COMM NUMBER 雇员奖金
  2、简单查询
  1.查询不重复的职位
  
  
  select distinct job from emp;
  2.查询年薪,起别名,别名不要用单引号括起来
  
  
  select sal*12 [as] income from emp;
  3.简单查询中可以使用"||"连接查询的字段
  
  
  select empno ||','|| ename from emp;
  sql语句中的字符串用单引号表示
  select '雇员编号是:'||empno||'姓名是:'||ename||'工资为:'||sal||'职位是:'||job||'!' 雇员信息 from emp;
  4.在oracle中数据时区分大小写的
  
  
  select * from emp where job ='CLERK';
  查询不是办事员的雇员信息
  
  
  select * from emp where job!='CLERK';
  select * from emp where job<>'CLERK';
  select * from emp where NOT job='CLERK';
  5.BETWEEN ……AND 大于等于 小于等于
  
  
  select * from emp where sal between 1500 and 3000;
  也可以求反
  
  
  select * from emp where sal not between 1500 and 3000;
  也可以是日期
  
  
  select * from emp where hiredate between '01-1月 -1981' and '31-12月 -81';
  6. 判断是否为空IS(NOT)NULL
  
  
  select * from emp where comm Is not null;
  select * from emp where not comm Is null;
  7.IN操作符
  
  
  select * from emp where empno in (7521,7844,5555);
  select * from emp where empno not in (7521,7844,5555);
  关于NOT IN
  如果现在使用了IN操作符,查询范围之中存在了null,不影响查询
  
  
  select * from emp where empno in (7521,7844,null);
  如果现在使用的是NOT IN操作符,如果查询范围之中有了null,则不会有任何的结果返回
  
  
  select * from emp where not empno in (7521,7844,null);
  select * from emp where empno not in (7521,7844,null);
  8.LIKE子句
  匹配符号:
  匹配单个字符: _ 0个
  匹配任意多个字符:% 0个、一个、多个
  查询全部以字母"A"开头的雇员
  
  
  select * from emp where ename like 'A%';
  查询第二个字母为"A"的雇员
  
  
  select * from emp where ename like '_A%';
  查询含有字母为"A"的雇员
  
  
  select * from emp where ename like '%A%';
  查询不含有字母为"A"的雇员
  
  
  select * from emp where not ename like '%A%';
  select * from emp where ename not like '%A%';
  LIKE '%%' 表示查询全部数据
  
  
  select * from emp where empno like '%%'
  9.数据的排序
  
  
  order by 字段 [ASC|DESC][,字段 [ASC|DESC]……];
  order by子句必须在where子句之后,在所有sql语句最后
  排序的时候可以指明多个排序字段
  排序方式有两种:默认(ASC)升序 、DESC(降序)
  按照工资进行排序
  
  
  select * from emp order by sal desc;
  先按工资排序,再按照雇佣日期排序
  
  
  select * from emp order by sal desc,hiredate;
  希望本文所述对大家的Oracle程序设计有所帮助。
 

(编辑:我爱制作网_沈阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!