企业面试题库_数据库部分

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介:
使用存储过程进行分页,页面使用javascript分页 JavaDotnet  
如有城市表和蔬菜表,用SQL语句查询城市表,删除编号为2号的蔬菜, 为蔬菜表的蔬菜名称字段中添加土豆 题不全,无法做  
sql查询:查询出一个表中四川省和湖南省所有姓李的人的姓名 select * from table where Province in('sichuan','hunan') and name like ('li%') 子查询
左联接在什么时候应用 需要显示左表中所有数据,右表中对应数据. 查询语句
sql查询:找出张三的同乡 select * from people where hometown=(select hometown from people where name='张三') 子查询
查询学员表中英语一门成绩最高的人 select * from students where score in (
                       select max(score)  from students where object='英语' )  and  object='英语'
子查询
查询学员表中有两门以上不及格的人 select *  from students   where score in (
                       select max(score)  from students where object='英语')  and  object='英语'
子查询
查询出各年级中男女的人数 select  classid,sex,count(*) 人数 from  table  group by classid,sex  分组查询
写一条SQL语句 筛选出不重复的数据? select * from table where id in(select id  from table group by id  having count(id)=1) 分组子查询
oracle数据库TEST表(name,age(出生日期))中年龄大于10周岁的 姓名? select name from test where  months_between(sysdate,age)>10*12 数据库常用函数
写一个得到查询orcle数据库里面的记录的方法? JavaDotnet  
写一个存储过程或触发器? oracle存储过程
CREATE OR REPLACE PROCEDURE query_employee
(eno NUMBer,name OUT VARCHAR2,salary  OUT NUMBER)
IS
BEGIN
 select ename,sal into name,salary FROM emp WHERE empno=eno;
EXCEPTION
 WHEN NO_DATA_FOUND THEN
  RAISE_APPLICATION_ERROR(-20000,'
雇员不存在');
END;
oracle
触发器:
create or replace trigger tr_sec_emp
  after insert or update or delete on emp  
declare
 v_count number;
begin
 select count(*) into v_count from emp where sal=0;
 dbms_output.put_line(v_count);
end tr_sec_emp;
存储过程触发器
什么是数据库的内连接,有几种形式 内连接:若连接的结果集中只保留了符合连接条件的元组,而排除了两个表中没有对应的或匹配的元组情况,这种连接称为内连接。
两种形式
:一个表做内连接;两个表做内连接.
表连接查询
编写SQL语句,删除一个表中的重复记录,假如表中有一个name字段,name重复即为重复记录 delete from table where name in(
                select name  from table  group by name  having count(name)>1)
分组子查询
delete from tableA与truncate table tableA的区别 1.delete是数据操作语言,操作会写入日志,在未提交之前可以回滚;truncate是数据定义语言,不写入日志,不可回滚
2.truncate执行效率比delete高
3.delete可以根据条件删除数据;truncate会删除表中所有的记录
数据库基础
查询出Test表中重复三次以上的记录 1.创建表:create table test (id int,col1 varchar(3),col2 varchar(3))
2.
假设所有字段都重复,包括3次
select * from test where id in (select id from test  group by id,col1,col2 having count(*)>=3)
分组子查询
查询出user表中用户名和密码相同的记录,并查询出重复出现的次数。User(UserName,password,description) select userName,password,count(*) from test group by userName,password having count(*)>1 分组查询
索引列 product  SQL语句 select * from product where sal*12<5000; 优化此语句,简述原因 select * from product where sal<5000/12
计算和函数会使索引列失效,因此改为不对索引列进行计算,就可以利用到索引列,提高查询效率
SQL调优
查询出表中salary最高的前三位。Test(user,salary) 1.不考虑并列情况
   select top 3 * from test order by salary desc
2.
考虑并列的情况
   SELECT * FROM  (SELECT user,salary,dense_rank() over(order by salary desc) as drank from test ) 
   where rank<4
查询语句
查询ID重复三条以上的记录 与17题雷同
select * from test where id in (select id from test  group by id having count(*)>=3)
分组子查询
SQL查询语句中的关键字like对查询有影响吗?如果有,有什么影响? 有影响,会降低查询效率 SQL调优
SQL中都有哪些类型?试写出至少3 字符型:char varchar 数字型:int numeric 日期型:datetime 数据库基础
Oracle中是物理组件有哪些? 数据文件:用于存储数据库数据,如表、索引数据等
控制文件:记录数据库物理结构的二进制文件
日志文件:记录对数据库的所有修改信息,用于故障恢复
Oracle基础知识
重写日志文件对数据有什么用? 记录对数据库的所有修改信息,用于故障恢复 Oracle基础知识
控制文件有什么用? 记录数据库物理结构,如数据库名,文件存放位置等等。启动数据库时需要读取该文件信息 Oracle基础知识
ORACLE中的逻辑组件有那些 表空间、段、区、数据块 Oracle基础知识
表空间与模式的关系 表空间不属于任何模式,可以为多个模式所共有 Oracle基础知识
SQL语句创建用户,并赋权 1.创建用户,使用默认表空间
CREATE USER user1 IDENTIFIED BY user1 DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP;
2.
赋与dba的权限
grant  dba to user1
Oracle基础知识
什么函数用于获取时间,怎么获取 日,月,  1.获取时间  select getdate() from tabName
2.
获取日月年
SELECT DATEPART(day,GETDATE()) AS '',datepart(month,getdate()) as '',datepart(year,getdate()) as ''
数据库常用函数
怎样使用通配符%_ %是模糊查询,_匹配单个字符
例如:
select * from test where name like 'a%';
SELECT *    FROM test  WHERE name LIKE 'j___s';
数据库常用运算符
怎么在数据库中插入单引号 1.利用数据库本身提供的转义字符,如oracle中''''则可插入'
2.借助ASCII码转换函数插入
数据库常用函数
not in  NOT exists的区别 1.not in 后面跟着结果集,not exists后返回的是true或者false
2.not in一般需要进行全表扫描,大部分情况下效率比not exists要低
3.形如select * from t1 where f1 not in (select f1 from t2 where t2.fx= 'x '),
其中子查询的where里的条件不受外层查询的影响,这类查询一般情况下,自动优化会转成exist语句,
也就是效率和not exist一样。  
4.形如select * from t1 where f1 not in(select f1 from t2 where  t2.fx=t1.fx),
其中子查询的where里的条件受外层查询的影响,这类查询的效率要看相关条件涉及的字段的索引情况
和数据量多少,一般认为效率不如not exists。    
SQL调优
用一条语句将第一和第二张表连接成第三张表 select   *   from   A     union   all     select   *   from   B     ----2个表的全部记录(包括重复的,不排序)   
  or       
select   *   from   A     union      select   *   from   B     -----
排序并去掉重复的记录  
 
分类:  面试题

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2010/12/19/1910663.html,如需转载请自行联系原作者
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
5月前
|
SQL 运维 监控
数据库国产化选型?YashanDB 给中大型企业的五个答案
近两年,“国产数据库”成为企业数字化升级的重要议题。YashanDB作为新一代国产关系型数据库,以完整产品矩阵解决企业核心关切:通过图形化工具提升开发效率;提供自动化迁移平台简化数据库切换;云管理工具减轻运维负担;支持复杂业务场景;拥有成熟团队保障企业级服务。YashanDB不仅是“可替代”,更是“更可靠”的选择,助力企业实现高效、可控的数据库升级。
|
5月前
|
存储 SQL 运维
当「内容科技企业」遇上多模数据库:新榜采用Lindorm打造全域数据“超级底盘”
新榜业务以数据服务提升内容产业信息流通效率,其数据处理需求聚焦于跨平台实时数据融合处理、实时分析检索、批量更新效率三大维度。Lindorm通过多模超融合架构,提供检索分析一体化、多引擎数据共享,分布式弹性扩展等能力,成为支撑新榜内容服务的核心引擎,助力客户在内容生态竞争中持续领跑。
|
8月前
|
SQL 数据挖掘 关系型数据库
阿里云百炼|析言GBI全新发布:联合云上数据库,助力企业轻松实现ChatBI
析言GBI是阿里云推出的一款基于AI的智能数据分析产品,通过自然语言处理实现对话式数据分析。用户无需编写代码,即可轻松进行数据查询、分析和可视化。该产品支持多种数据库连接方式(如MySQL、PostgreSQL等),并提供多版本选择以适应不同业务需求。即将发布的动态规划BI分析功能将进一步提升复杂问题的拆解与综合分析能力。欢迎访问阿里云百炼应用广场体验析言GBI,并享受200次免费问题额度。
|
9月前
|
存储 Java easyexcel
招行面试:100万级别数据的Excel,如何秒级导入到数据库?
本文由40岁老架构师尼恩撰写,分享了应对招商银行Java后端面试绝命12题的经验。文章详细介绍了如何通过系统化准备,在面试中展示强大的技术实力。针对百万级数据的Excel导入难题,尼恩推荐使用阿里巴巴开源的EasyExcel框架,并结合高性能分片读取、Disruptor队列缓冲和高并发批量写入的架构方案,实现高效的数据处理。此外,文章还提供了完整的代码示例和配置说明,帮助读者快速掌握相关技能。建议读者参考《尼恩Java面试宝典PDF》进行系统化刷题,提升面试竞争力。关注公众号【技术自由圈】可获取更多技术资源和指导。
|
10月前
|
SQL 缓存 监控
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
本文详细解析了数据库、缓存、异步处理和Web性能优化四大策略,系统性能优化必知必备,大厂面试高频。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
|
10月前
|
架构师 数据库
大厂面试高频:数据库乐观锁的实现原理、以及应用场景
数据库乐观锁是必知必会的技术栈,也是大厂面试高频,十分重要,本文解析数据库乐观锁。关注【mikechen的互联网架构】,10年+BAT架构经验分享。
大厂面试高频:数据库乐观锁的实现原理、以及应用场景
|
9月前
|
存储 NoSQL 关系型数据库
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
我们的风控系统引入阿里云数据库MongoDB版后,解决了特征类字段灵活加减的问题,大大提高了开发效率,极大的提升了业务用户体验,获得了非常好的效果
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
|
存储 关系型数据库 MySQL
【Java面试题汇总】MySQL数据库篇(2023版)
聚簇索引和非聚簇索引、索引的底层数据结构、B树和B+树、MySQL为什么不用红黑树而用B+树、数据库引擎有哪些、InnoDB的MVCC、乐观锁和悲观锁、ACID、事务隔离级别、MySQL主从同步、MySQL调优
【Java面试题汇总】MySQL数据库篇(2023版)
|
11月前
|
安全 NoSQL 关系型数据库
阿里云数据库:助力企业数字化转型的强大引擎
阿里云数据库:助力企业数字化转型的强大引擎
|
11月前
|
存储 NoSQL MongoDB
小川科技携手阿里云数据库MongoDB:数据赋能企业构建年轻娱乐生态
基于MongoDB灵活模式的特性,小川实现了功能的快速迭代和上线,而数据库侧无需任何更改

热门文章

最新文章