数据库

1、数据库分类
(1)关系型数据库
Oracle:MySQL Oracle
Microsoft:SQL server
IBM:DB2
常见问题:MySQL、Oracle 区别?
① Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。

② Oracle支持大并发,大访问量,是OLTP最好的工具。

3.安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。
④Oracle和Mysql操作上也有区别

2、SQL语句分类
(1)DDL(数据定义语言) 和结构相关的 create alter
(2)DML(数据操作语言) 和数据相关的 insert into delete update
(3)DCL(数据库控制语言) grant create view to scott
(4)DQL(数据库查询语言) select

3、查询
(1)条件查询
(2)子查询
(3)嵌套查询
(4)多表关联查询
(5)查询基本语法:

select co|1,co|2| from tab where 条件 group by co|1 having 聚合条件表达式 order by co|1,co|2 asc | desc*

(6)连接:
①自然连接
②内连接
3 外连接(左、右)
④自连接(emp 表 mgr)

4、Oracle 案例
(1)删除重复记录 rowid
(2)分页 rownum
(3)exists in区别?
in:确定给定的值是否与子查询或列表中的值相匹配。in在查询的时候,首先查询子查询的表,然后将内表和外表做一个笛卡尔积,然后按照条件进行筛选。所以相对内表比较小的时候,in的速度较快。

exists:指定一个子查询,检测行的存在。遍历循环外表,然后看外表中的记录有没有和内表的数据一样的。匹配上就将结果放入结果集中。

(4)union/union all 区别?
union:对两个结果集进行并集操作,不包括重复行,同时进行默认的规则排序。
union all:对两个结果集进行并集操作,包括重复行,不进行排序
(5)case when (两类案例)
select 姓名,sum(语文),sum(数学) from
(select 姓名,
case when 科目=‘语文’ then 成绩 else 0.0 end 语文,
case when 科目=‘英语’ then 成绩 else 0.0 end 英语 from demo)t group by 姓名;

5、数据库对象
(1)表
(2)视图
(3)索引
(4)序列
(5)储存过程
(6)函数
(7)触发器

6、函数
(1)聚合函数
①sum count avg max min

(2)单行函数
①字符函数 length substr concat lower upper
②数值函数 sqrt ceil foor
3日期函数 add_month add_day diff_
④转换函数 to_date toa_char to_number
5其他 nvl nvl2(类似三目运算符)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值