1. Oracle和MySQL的区别?
1、Oracle是大型数据库,而MySQL是中小型数据库。但是MySQL是开源的,但是Oracle是收费的,而且比较贵。
2、Oracle的内存占有量非常大,而mysql非常小
3、MySQL支持主键自增长,指定主键为auto increment,插入时会自动增长。Oracle主键一般使用序列。
4、MySQL字符串可以使用双引号包起来,而Oracle只可以单引号
5、MySQL分页用limit关键字,而Oracle使用rownum字段表明位置,而且只能使用小于,不能使用大于。
6、Oracle在处理长字符串的时候,长度是小于等于4000个字节,如果要插入更长的字符串,考虑用CLOB类型,插入修改记录前要做进行修改和 长度的判断,如果为空,如果长度超出返回操作处理.(CLOB类型是内置类型,它一般都作为某一行中的一列,有些数据库也有别名)
7、MySQL中0、1判断真假,Oracle中true false
8、MySQL中命令默认commit,但是Oracle需要手动提交
9、MySQL在windows环境下大小写不敏感 在unix,linux环境下区分大小写,Oracle不区分
2. Oracle的行转列
行转列 pivot 列转换 unpivot
pivot(聚合函数 for 列名 in(类型))
3. sql的执行顺序
开始->FROM子句->WHERE子句->GROUP BY子句->HAVING子句->ORDER BY子句->SELECT子句->LIMIT子句->最终结果
4. oracle实现分组查询
roup by 要分组的列名 对数据集合处理的函数,可以处理多行数据
--5个分组函数
--count --计数函数,用于数量的统计
--sum 求和函数,对数据进行求和
--avg 求评平均,对一组数据求平均值
--min ,求最小值
--max ,求最大值
5. 左连接怎么使用的
select * from table_1 left join table_2 on table_1.id = table_2.id
6. 索引怎么用,在一张表上创建很多索引可以吗,为什么?
create index 索引名 on 表名(列名) tablespace 表空间名
可以。因为.......(待补充)
7. 如果想查某个时间段的数据,该怎么查?
select * from table_1 where date between 时间段1 AND 时间段2
8. 数据库怎么优化查询?
1.尽量少用in操作符
2.尽量用not exists或者外连接替代not in操作
3.尽量不使用<>或者!=运算符
4.在设计表的时候,把索引列设置为not null
5.尽量不使用通配符%或者_作为查询字符串的第一个字符
6.where字句避免在索引列上计算使用
7.用>=代替>
8.利用SGA共享池,避开parse阶段
9.where后面的条件,表连接的语句在前,可以过滤掉最大数量记录的条件居后
10.使用表的别名,并将之作为每列的前缀
11.显式或者隐式运算的字段不能索引
12.用Union all 代替union
13.通过改变Oracle的SGA的大小
9. 索引的实现方式
btree索引 hash索引 R-tree索引 full-text 全文索引
10. MySQL的索引是是用什么数据结构,并介绍内部如何实现?
btree结构:
又叫多路平衡搜索数,一颗m叉的btree特性如下
1.树中每个节点最多包含m个孩子
2.除跟节点与叶子节点外,每个节点 只是有[ceil(m/2)]个孩子
3.若个节点不是 叶子节点,则至少有两个孩子
4.所有的叶子节点都在同一层
5.每个非叶子节点由n个key与n+1个指针组成,其中[ceil(m/2)-1]<=n<=m-1
11. 索引会对更新造成影响吗,为什么
会。因为虽然索引大大提高了查询效率,同时也降低了更新表的速度
12. 视图索引的创建
create unique index index_name on test(id);
13. 视图为什么比一般的语句好用?
因为是一种虚拟存在的表,不在数据中实际存在。可以简化查询
14. MySQL存储引擎有哪些,默认用哪个
myisam和innodb 默认innodb
15. 创建存储过程
create procedure 存储过程名(参数列表)
BEGIN
存储过程体(一组合法的sql语句)
END
16. 给出一个内查询的例子
select xxx from table_1 where id in (select id from table_2 where name = 'jack');
17. 数据库查询优化
同8.
18. 介绍一下innodb 和MyIsam,他们的区别
INNODB存储引擎是mysql的默认存储引擎,提供了具有提交,回滚,崩溃恢复能力的事务安全。但是对于MYLSAM的存储引擎,INNODB写的处理效率差一些,并且会占用更多的磁盘空间以保留数据和索引.
MyIsam不支持事务,也不支持外键,其优势就是访问速度快。对事务的完整性没有要求或者以select,为主的应用基本都可以使用这个引擎来创建表.
19. 数据库索引怎么使用?分类?在哪些地方使用过?
create [unique|fulltext] INDEX index_name
[USING index_type]
on tb_name;索引的分类 :
单值索引:即一个索引只包含单个列一个表可以有多个单列索引
唯一索引:索引的列的值必须唯一,但允许有空值
复合索引:即一个索引包含多个列
在大量数据中查找等操作的时候,可以使用索引提高检索效率。
20. 事务,事务的特性?
- 事务就是用户定义的一系列执行SQL语句的操作, 这些操作要么完全地执行,要么完全地都不执行, 它是一个不可分割的工作执行单元。
- 原子性,一致性,隔离性,持久性
21. truncate、delete、drop的区别?
1.delete可以加where ,truncate不可以
2.truncate删除,效率高一点点
3.加入要删除的表中有自增长列
如果用delete删除后,在插入数据,自增长的列值从断点 开始
而truncate删除后,再插入数据 自增长的列的值从1开始.
4.truncate删除没有返回值的,delete是有返回值
5.truncate删除不能回滚,delete删除可以回滚
6.drop语句将表所占用的空间全释放掉。
22. oracle提供的内置函数?
- 字符函数:
length() 返回str长度
trim() 去除字符串两边空格
lower() 转小写
upper() 转大写
concat() 拼接两个字符串
instr(str,find_str) 查询find_str在str是否存在
substr() 截取字符串
- 转换函数:
1、to_number(str):将字符类型转换成number类型。
2、to_char(time,format):将time时间类型按照format的格式转换成字符类型。
3、to_date(str,format):将str类型的时间按照format的格式转换成date时间类型
- 数值型函数
1、round(num,length):num小数保留length位长度,并且四舍五入。
2、ceil(num):返回向上取整num的结果。
3、floor(num):返回向下取整num的结果。
23. 连接表的时候是怎么操作的
select * from table_1 join table_2 on table_1.id=table_2.id where 限制条件
24. 有两个数组 任意类型 怎么最快做到查询其中有哪些数据是重复的
(不知道)
25. mysql怎么做全连接
select 查询列表
from 表1 别名 [full outer]
join 表2 别名
on 连接条件
[where 筛选条件]
26. 如何实现多条修改
可以使用while循环语句,或者IF--THEN语句结合。
27. 分页组件怎么是实现,在sql中怎么实现
在Oracle中,使用rownum进行分页,在MySQL中,使用limit关键字。
28. C3P连接池的使用和好处
ComboPooledDataSource source = new ComboPooledDataSource();
source.setDriverClass("com.mysql.jdbc.Driver");
source.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/aa?useUnicode=true&characterEncoding=utf-8");
source.setUser("root");
source.setPassword("000");
//获取链接
System.out.println(source.getConnection());好处:C3P0连接池不仅可以自动清理不再使用的Connection,还可以自动清理Statement和ResultSet。
29. 手机端数据库的了解
主要有5种。
BerkeleyDB Couchbase-lite LevelDB SQLite UnQlite
30. oracle实例和用户的关系
用户是在oracle实例下建立的。不同实例可以建相同名字的用户。
31. JDBC怎么连接数据库
//1.加载驱动程序
Class.forName("com.mysql.jdbc.Driver");
//2.获得数据库链接
Connection conn=DriverManager.getConnection(URL, USER, PASSWORD);
//3.通过数据库的连接操作数据库,实现增删改查(使用Statement类)
Statement st=conn.createStatement();
ResultSet rs=st.executeQuery("select * from user");
//4.处理数据库的返回结果(使用ResultSet类)
while(rs.next()){
System.out.println(rs.getString("user_name")+" "+rs.getString("user_password"));
}
//关闭资源
rs.close();
st.close();
conn.close();32. MySQL创建和删除表的关键字
创建:create 删除:drop
33. 比较表和视图的区别
是一种虚拟存在的表,不在数据中实际存在。视图可以简化查询。
34. oracle中的五个约束条件是什么?
主键约束 唯一约束 检查约束 默认约束 外键约束
35. 事物的传播属性有哪几种?分别有什么作用(Spring)
1、mandatory 表示当前方法必须在事务中进行,当前事务不存在,则抛出异常
2、required (默认的)当前方法必须在事务中进行,如果当前事务存在,则在当前事务中执行,如果不存在当前事务,则启动一个新的事务。
3、required_new 这个方法要求在新的事务中执行,会启动一个新的事务,如果存在当前事务,则该事务会先被挂起。
4、support 该方法可以不在事务中,但是如果在存在当前事务,那就在当前事务中执行。
5、never 给方法不可以在事务中执行,如果存在当前事务则抛出异常。
6、not_support 该方法不可以在事务中执行,如果存在当前事务,则该事务会被挂起。
7、nest,嵌套事务。如果当前事务不存在,则nest和requied相同。
寻找华纳圣淘沙公司开户代理(183-8890-9465薇-STS5099】
华纳圣淘沙官方合作开户渠道(183-8890-9465薇-STS5099】
华纳圣淘沙公司开户代理服务(183-8890-9465薇-STS5099】
华纳圣淘沙公司开户咨询热线(183-8890-9465薇-STS5099】
联系客服了解华纳圣淘沙开户
(183-8890-9465薇-STS5099】
华纳圣淘沙公司开户专属顾问
(183-8890-9465薇-STS5099】
华纳圣淘沙公司开户新手教程
零基础学会(183-8890-9465薇-STS5099)
华纳圣淘沙公司开户
华纳圣淘沙公司开户保姆级教程(183-8890-9465薇-STS5099)
一步步教你开通华纳圣淘沙公司账户(183-8890-9465薇-STS5099)
华纳圣淘沙公司开户分步图解
首次开户必看:(183-8890-9465薇-STS5099)
华纳圣淘沙全攻略
华纳圣淘沙公司开户实操手册(183-8890-9465薇-STS5099)
华纳圣淘沙开户流程视频教程
手把手教学:(183-8890-9465薇-STS5099)
华纳圣淘沙公司开户
华纳圣淘沙公司开户完全指南(183-8890-9465薇-STS5099)
华纳圣淘沙开户步骤详解(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户流程全解析(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司账户注册指南(183-8890-9465—?薇-STS5099【6011643】
新手如何开通华纳圣淘沙公司账户(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙企业开户标准流程(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户:从零到一(183-8890-9465—?薇-STS5099【6011643】
官方指南:华纳圣淘沙公司开户流程(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户流程说明书(183-8890-9465—?薇-STS5099【6011643】
东方明珠客服开户联系方式【182-8836-2750—】?μ- cxs20250806
东方明珠客服电话联系方式【182-8836-2750—】?- cxs20250806】
东方明珠开户流程【182-8836-2750—】?薇- cxs20250806】
东方明珠客服怎么联系【182-8836-2750—】?薇- cxs20250806】
新盛客服电话是多少?(?183-8890-9465—《?薇-STS5099】【
新盛开户专线联系方式?(?183-8890--9465—《?薇-STS5099】【?扣6011643??】
新盛客服开户电话全攻略,让娱乐更顺畅!(?183-8890--9465—《?薇-STS5099】客服开户流程,华纳新盛客服开户流程图(?183-8890--9465—《?薇-STS5099】
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
华纳公司合作开户所需材料?电话号码15587291507 微信STS5099
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
?总结与建议类?
收藏了,以后可能会用到
哈哈哈,写的太好了https://www.lawjida.com/
《严密的关系》喜剧片高清在线免费观看:https://www.jgz518.com/xingkong/29743.html
你的文章让我学到了很多知识,非常感谢。 https://www.yonboz.com/video/2006.html
你的文章让我感受到了无尽的欢乐,谢谢分享。 http://www.55baobei.com/FxKPUXQ9Vu.html
《智齿2021》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/29169.html
mycaizhi.com
你的文章让我感受到了不一样的视角,非常精彩。 https://www.4006400989.com/qyvideo/41311.html
不错不错,我喜欢看 www.jiwenlaw.com
不错不错,我喜欢看 https://www.ea55.com/
想想你的文章写的特别好
叼茂SEO.bfbikes.com
继续整理吧
嘿嘿好滴嗷~~