面试题-数据库-整理
1. 数据库 省份 农作物 产量(万吨) 321 甘肃 小麦 3 江苏 小麦 .......... .......... .......... 432 湖南 水稻 211 湖北 水稻 .......... .......... ........... 23 甘肃 棉花 0.2 浙江 棉花 ....... ......... .......... 用一条sql语句根据以上表格查询出如下结果。 1) 查询出来哪些省份棉花产量大于5000吨。 2) 查询出来哪些省份没有种植棉花作物。
3) 查询出来哪些省份水稻生产量在3万吨-30万吨之间。 4) 查询出来各省份农作物平均产量。
5) 查询出来哪些省份水稻或者小麦产量高于水稻产量。 6) 查询出来哪些省份小麦产量高于水稻产量。
7) 查询出来哪些省份棉花产量高于水稻产量但小于小麦产量。
2. 数据库
表名:subway,包含3个字段:id(线路编号)、stop(站点)、sequence(站点序列)。 如下,请写出以下SQL语句: Id(线路编号) Stop(站点) Sequence(站点序列) 1 10 人民广场 2 7 中山公园 1 1 莘庄 8 8 人民广场 2 10 人民广场 ......... ......... ......... 1) 找出站点名称包含“人民”的所有记录。 2) 找出途径线路数最多的站点。
3) 已知站点A和B,判断是否可以直达。
3. 数据库脚本语句在数据库中的执行顺序是( DCL-DML-DLL ) 4. 数据库 假设现有实体:
测试工程师:员工标号、单位、姓名、性别、年龄、测试项目; 测试项目:项目编号、项目名、所属部门、项目经理;
请用SQL语句完成:检索出不是测试项目编号为“P17”的项目测试工程师的姓名和测试项
目。
5. 数据库 学生表Student S#(学生编号)varchar(10) 01 02 03 04 05 06 07 08 课程表 Course C#课程编号 varchar(10) 01 02 03 教师表 Teacher T# 教师编号 varchar(10) 01 02 03 成绩表 SC S# 学生编号 varchar(10) 01 01 01 02 02 02 03 03 03 04 04 04 C# 课程编号 varchar(10) 01 02 03 01 02 03 01 02 03 01 02 03 Score 分数 decimal(18,1) 80 90 99 70 60 80 80 80 80 50 30 20 Tname 教师姓名varchar(10) 张三 李四 王五 Cname课程名称varchar(10) T#教师编号 varchar (10) 语文 数学 英语 02 01 03 Sname(学生姓名)varchar(10) 赵雷 钱电 孙1 李 周 吴 郑 王 Sage(出生年月)datetime 1990-01-01 1990-12-21 1990-05-20 1990-08-06 1991-12-01 1992-03-01 1989-07-01 1990-01-20 Ssex(学生性别)varchar(10) 男 男 男 男 女 女 女 女 05 05 06 06 07 07 01 02 01 03 02 03 76 87 31 34 89 98 1)查询出只有两门课程的全部学生的学号和姓名。 2)查询男生,女生人数。 3)查询“李”姓老师的数量
4)检索“01”课程分数小于60,按分数降序排列的学生信息。
6. 某数据库中存放两个数据表:教师表(教师编号,教师姓名)和课程表(课程号,课程名,教师编号),若要 快速查出某位教师教授的课程,下列建立索引方式中正确的是() A. 在教师表上按教师编号建立索引 B. 在课程表上按照课程号建立索引 C. 在课程表上按教师编号建立索引 D. 在教师表上按照教师姓名建立索引
7. 下列关于数据库中触发器的描述中错误的是() A. 触发器是一种特殊的存储过程
B. 触发器常在SELECT.INSERT.UPDATE和DELETE操作时触发 C. 触发器可以通过数据库中的相关表进行层叠更改
D. 触发器是自动的,可以在用户对表的数据做了修改之后被自动激活
8. 数据库
主表(student)如下: Student 表 自动编号 12005001 22005002 32005001 42005001 学号姓名 张三 李四 张三 张三 课程编号 0001 0001 0001 0001 课程名称 数学 数学 数学 数学 分数 69 89 69 69 删除除了自动编号不同,其他都行同的同学冗余信息的方法。
9. 数据库
数据库由以下四个关系模式构成:
供应商表S(S#,SNAME,STATAUS,CITY)
零件表:P(P#,PNAME,COLOR,WEIGHT,CITY) 工程项目表:J(J#,JNAME,CITY)
供应商-零件-工程项目表:SPJ(S#,P#,J#,QTY) 供应商S,零件P和工程项目J分别由供应商(S#),零件号(P#)和工程项目号(J#)唯一
标识,供货SPJ是反映某个工程项目供应某些数量的某种零件。
请用SQL语言完成下面的问题:
1)找出给上海的工程项目提供的不同零件号。 2)将没有供货的所有工程项目从J中删去。 3)计算所有工程项目中零件P1的总使用量。
4)查询这样的工程项目号:供给该工程项目的零件P1的平均供应量大于10.
10. 数据库
现在有如下两个表,js表和mem表,mem表中js_t记录js的id 请做如下查询: 表1:mem(人员) id 1023 1034 1025 1026 1027 表2:js id 1 2 3 4 5 type Android IOS Web Linux Mac count 25 37 26 10 56 username chen yang zhang guo li realname 小晨 小杨 小张 小郭 小李 Js_t 2 2 5 3 4 1) 请写出一条sql,查询mem表中共有几种js_t类型; 2) 请写一条sql,查询type是IOS 和Web的人员名单。
3) 请建立一张视图,显示mem表中人员信息和所对应的机型及数量。
11. 数据库
你了解哪些数据库类型?且简述MySQL 和SQL Server 的主要区别。
12. 有一个 用户表user,有三个字段,username,usercode,password。
1)举例说明对数据库的基本操作(增加,删除,更新,查询) 2)查询出username中包含“张”的用户信息。
13. 数据库表中通过使用________可标识一条记录的唯一性。使用________可提高检索效率。
14. 数据库表记录的增,删,改分别用_________、_________、_________语句。
15. 数据库
请根据以下表间关系写出SELECT语句;每个业务日期的“状态为派单、送出和结账”的订单全额合计值(如写不出请说明思路) 提醒:可能需要用到的函数有sum()、group by 状态表 STATUS STATUS ID 状态ID 101 102 103 104 105 106 107 订单表ORDER_HEADER ORDER_ID订单ID 1 2 STATUS NAME 状态名称 创建 接收 派单 备餐 送出 结账 无人接收 ORDER_CODE订单编号 201107010001 2011070100002 STATUS_ID状态ID 101 106 ORDER_DATE业务日期 20110701 20110701 PRODUCT_ID 产品ID D101 D118 QTY数量 AMOUNT 订单金额 1 5 80.00 125.50
16. 数据库
有两张表Student 和Score,数据示例如下:Student.StudentId跟Score.StudentId关联 Student 学生表 StudentId 学生ID 1 2 3 Score 成绩表 StudentId 1 1 Subject 科目 英语 数学 Score分数 88 68 Name 姓名 张帆 刘华 .... Class班级 1-1 1-2 ...