已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
oracle数据库学习总结基础:一、ORACLE中字段的数据类型1、 字符型 1)char 范围 最大2000个字节 定长 char(10) 张三 后添空格6个把10个字节补满 张三 性别 char(2) 男 2)varchar2 范围 最大4000个字节 变长 varchar2(10) 张三 在数据库中张三2、数字 number 范围 10的-38次方 到10的38次方 可以表示小数 也可以表示整数 number(4) 最大表示4位整数 -9999 到 9999 number(5,2) 表示5位有效数字 2位小数的 一个小数 -999.99 到 999.99 3、日期 date 包含年月日和时分秒 7个字节4、图片 blob 二进制大对象 图像/声音 4G二、如何建表学生表student create table student( -学生表 xh number(4), -学号 xm varchar2(10), -姓名 sex char(2), -性别 birthday date, -日期 sal number(7,2) -奖学金 );三、字段的添加、删除、修改1、添加字段(学生所在班级classid) alter table student add (classid number(2);2、修改字段的长度 alter table student modify (xm varchar2(12) ;3、修改字段的类型(不能有记录的) alter table student modify (xh varchar2(5);4、删除一个字段 alter table student drop column sal;5、删除表 drop table student;6、表的名字修改 rename student to stu;7、字段如何改名字 -先删除 a)alter table student drop column sal; -再添加 b)alter table student add (salary number(7,2);四、插入字段(values是insert语句的一个关键词,后面跟要插入的一组字段值。)1、所有字段都插入 insert into student values (A001,张三,男,01-5月-05,10);2、部分字段插入 insert into student(xh,xm,sex) values (A003,JOHN,女);3、插入空值 insert into student(xh,xm,sex,birthday) values (A004,MARTIN,男,null);五、删除语句1、删除 delete delete from student; 删除所有记录,表结构还在,写日志,可以恢复的,速度慢 drop table student; 删除表的结构和数据 delete from student where xh=A001; 删除一条记录 truncate table student; 删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快六、查询语句1、查询 select select * from student; select xh,xm,sex from student; select * from student where xh like A%1; %任意多个字符 select * from student where xh like A_1; _1个字符七、混合函数1、求最大值 select greatest(100,90,80,101,01,19) from dual;2、求最小值 select least(100,0,-9,10) from dual;八、空值转换函数 nvl(comm,0) 字段为空值 那么就返回0 否则返回本身 select comm,nvl(comm,0) from emp; comm 类型和 值的类型是 一致的九、复杂的函数 1、decode 选择结构 (if . elseif . elesif . else结构)例、要求: sal=800 显示低工资 sal=3000 正常工资 sal=5000 高工资 只能做等值比较解决:select sal,decode(sal,800,低工资,3000,正常工资,5000,高工资,没判断) from emp; 表示如下的if else 结构 if sal=800 then 低工资 else if sal =3000 then 正常工资 else if sal = 5000 then 高工资 else 没判断 end if sal 800 sal -800 0 十、分组函数分组函数 返回值是多条记录 或计算后的结果group by、sum、avg1、计算记录的条数 countselect count(comm) from emp; 字段上count 会忽略空值 comm不为空值的记录的条数2、group by 分组统计-有分组函数的时候-分组统计的功能 统计每种工作的工资总额是多少? select job,sum(sal) from emp group by job; -行之间的数据相加 select sum(sal) from emp; -公司的工资总额3、显示平均工资2000的工作?? 统计每种工作的平均工资是多少 塞选出平均工资2000的工作 从分组的结果中筛选 having select job,avg(sal) from emp group by job having avg(sal) 2000; group by 经常和having搭配来筛选十一、约束 主键约束 - 每个表要有主键,唯一的标识一行数据 非空约束 唯一性 外键约束 检查约束 1、建立表的同时使用约束 create table student( -学生表 xh number(4) primary key, -学号主键 xm varchar2(10) not null, -姓名不能为空 sex char(2) check (sex in (男,女), -性别 birthday date unique, -日期 sal number(7,2) check (sal between 500 and 1000),-奖学金 sal =500 and sal =500 and sal c.mark) = 0第三问:查询出以下信息学号 学生姓名 课程名称 成绩 (成绩大于60时的显示及格,小于60时的显示不及格)select a.studentid 学 号,studentname 学生姓名,subjectname 课程名称,decode(sign(mark-60),-1,不及格,及格) 成 绩from student a,subject b,grade cwhere a.studentid = c.studentidand b.subjectid = c.subjectid第四问:查询出以下信息学号 学生姓名 (查询出课程超过1门以上学生的信息)select a.studentid 学 号,studentname 学生姓名,count(subjectname)from student a , subject b , grade cwhere a.studentid = c.studentidand b.subjectid = c.subjectidgroup by a.studentid,studentnamehaving count(subjectname) = 2拓展:一、复制一张表的结构 -数据一起复制 create table mydept as select * from dept; -只复制结构 create table mydept1 as select * from dept where 1=2; -把数据从一个表复制到另一个结构相同的表 insert into mydept1 select * from dept; -只复制部分数据 insert into mydept1 select * from dept where deptno20; insert into mydept1(deptno,loc) select deptno,locfrom dept;a.没有主键的表如何消重复记录create table test( id number(2), name varchar2(10); insert into test values (1,aa); insert into test values (1,aa); insert into test values (1,aa); insert into test values (2,bb); insert into test values (3,cc); create table test1 as select distinct * from test;二、ORACLE中建立数据库对象约束 序列 sequence - 自动编号 - IDENTITY (SQLSERVER) 建立序列 create sequence seq1; 从1开始 每次自动增加1 没有最大值 怎么使用 select seq1.nextval from dual; nextval 伪
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 南方科技大学设计学
- 安全管理实训总结报告
- 出纳及会计岗位模拟实训报告
- 乡村振兴展览馆设计案例分析
- 企业供应链管理实训报告
- 低碳环保服装设计
- 中餐厨房实训报告总结
- 产品与服务设计专业
- 体育微格教学教案设计
- 创新创业设计总结报告
- 激发学生内在学习动机(教案)小学生心理健康教育
- 【组织发展】4D欣赏式探询工作坊
- 2023年高考化学天津卷(附答案与解析)
- 内审检查表内审检查表
- 北京邮电大学2016年自主招生申请报告-(完整)
- 继发性甲状旁腺功能亢进症课件
- 《胖东来企业文化指导手册》
- 二氧化碳压裂技术
- 国家义务教育质量监测德育-道德与法治四年级创新作业测试卷【附答案】
- 火电企业档案分类表
- 新课标背景下:基于任务群的语文五下第六单元整体教学设计
评论
0/150
提交评论