查询练习题

合集下载

查字典练习题(打印版)

查字典练习题(打印版)

查字典练习题(打印版)# 查字典练习题(打印版)## 一、单字查询练习1. 请查字典,找出“明”字的部首,并列出其所有读音。

2. “海”字在字典中的释义有哪些?请列出至少三种。

3. “笑”字的笔画数是多少?请在字典中查找并回答。

## 二、词组查询练习1. “和谐”一词在字典中的含义是什么?请写出至少两条释义。

2. “团结”一词通常用在哪些语境中?请根据字典解释说明。

3. “创新”一词在现代汉语中有哪些常见用法?请列举并解释。

## 三、同音字辨析练习1. “和”、“合”、“河”、“核”这四个字都发什么音?请在字典中查找并说明它们各自的意思。

2. “再”与“在”发音相同,但意义不同,请分别找出它们在字典中的释义。

## 四、多音字辨析练习1. “行”字有几个读音?请在字典中查找并列出每个读音的意义。

2. “载”字在不同读音下的意义是什么?请分别列举并解释。

## 五、成语查询练习1. 成语“海纳百川”是什么意思?请在字典中查找并解释。

2. “笑里藏刀”这个成语通常用来形容什么?请根据字典给出解释。

3. “明察秋毫”这个成语用来形容什么?请在字典中查找并解释其含义。

## 六、词语搭配练习1. “发展”一词通常与哪些词语搭配使用?请列举至少三个词组。

2. “提高”可以与哪些词语搭配?请列举至少三个词组。

3. “创新”一词可以与哪些词语搭配使用?请列举至少三个词组。

## 七、近义词与反义词查询练习1. “美丽”的近义词有哪些?请在字典中查找并列举至少三个。

2. “失败”的反义词是什么?请在字典中查找并回答。

3. “勤奋”的近义词和反义词分别是什么?请在字典中查找并说明。

## 八、词语解释练习1. “可持续发展”是什么意思?请在字典中查找并解释。

2. “环境保护”的概念是什么?请根据字典给出解释。

3. “科技创新”在现代社会中的重要性是什么?请在字典中查找相关词语并解释。

## 九、词语用法练习1. “不仅……而且……”这个关联词组如何使用?请给出一个例句。

连接查询练习题

连接查询练习题

1、对class表和student表使用交叉连接
2、查看学生基本信息和所在班级的信息
3、查询学生的选课信息,要求显示学号、姓名、课程编号、课程姓名、志愿号,并按照学号升序排序,当学号相同时则按照志愿号升序排序
4、查询学生报名“计算机应用工程系”开设的选修课程情况,显示信息包括学生姓名、课程名称和教师
5、查询“01电子商务”班学生选修课程的情况,要求显示班级名称、学号、姓名、课程名称和上课时间
6、查询每个班级可以选修的,不是自己所在系部开设的选修课程的信息,显示信息包括班级、课程名、课程类别、学分、老师、上课时间和报名人数
7、课程类别相同但开设系部不同的课程信息,要求显示课程编号、课程名称、课程类别、系部编号,并按课程编号升序排列查询结果
8、查找和SQL Server实用技术同一系部开设的课程名称
9、查询所有学生的基本信息以及选课信息,要求既显示已报名选修课程的学生,也显示未报名的学生信息,结果显示学号、课程编号、课程名称
10、查询被学生选修和未被学生选修的课程信息,结果显示课程编号、课程名称、学号。

数据库查询练习题

数据库查询练习题

数据库查询练习题数据库查询是管理和获取数据库数据的重要技能之一。

通过熟练掌握数据库查询语言,可以高效地检索和操作数据库中的数据。

以下是一些数据库查询练习题,帮助提升你的查询技巧和理解能力。

题目一:假设有一个名为"students"的表,包含以下列:- id: 学生ID,整数类型- name: 学生姓名,字符串类型- age: 学生年龄,整数类型- major: 学生专业,字符串类型请编写SQL查询语句,从"students"表中查询出年龄小于20岁的学生姓名和专业。

解答一:```SELECT name, majorFROM studentsWHERE age < 20;```题目二:假设有一个名为"orders"的表,包含以下列:- order_id: 订单ID,整数类型- customer_name: 客户姓名,字符串类型- order_date: 订单日期,日期类型- total_amount: 订单总金额,浮点数类型请编写SQL查询语句,从"orders"表中查询出客户姓名、订单日期和订单总金额,并按订单日期降序排序。

解答二:```SELECT customer_name, order_date, total_amountFROM ordersORDER BY order_date DESC;```题目三:假设有一个名为"employees"的表,包含以下列:- emp_id: 员工ID,整数类型- emp_name: 员工姓名,字符串类型- department: 员工部门,字符串类型- salary: 员工工资,整数类型请编写SQL查询语句,从"employees"表中查询出部门名称和该部门的平均工资,并按照平均工资降序排序。

解答三:```SELECT department, AVG(salary) AS average_salaryFROM employeesGROUP BY departmentORDER BY average_salary DESC;```题目四:假设有一个名为"products"的表,包含以下列:- product_id: 产品ID,整数类型- product_name: 产品名称,字符串类型- price: 产品价格,浮点数类型- category: 产品类别,字符串类型请编写SQL查询语句,从"products"表中查询出每个类别中价格最高的产品名称和价格。

复杂查询练习题

复杂查询练习题

复杂查询练习题查询是数据库操作中非常重要的一部分,复杂查询尤其如此。

本文将通过一系列练习题,帮助读者提升复杂查询的能力。

1. 查询员工表中所有部门的名称及部门中的员工数量,并按照员工数量降序排列。

```sqlSELECT AS 部门名称, COUNT(e.id) AS 员工数量FROM 部门表 dLEFT JOIN 员工表 e ON d.id = e.dept_idGROUP BY ORDER BY 员工数量 DESC;```在这个查询中,我们使用了LEFT JOIN将部门表和员工表连接起来。

通过COUNT函数,我们可以统计每个部门中的员工数量。

最后,通过ORDER BY子句,我们按照员工数量降序排列结果。

2. 查询员工表中薪水最高的前5名员工的姓名、工资和部门名称。

```sqlSELECT AS 姓名, e.salary AS 工资, AS 部门名称FROM 员工表 eJOIN 部门表 d ON e.dept_id = d.idORDER BY e.salary DESCLIMIT 5;```在这个查询中,我们使用JOIN将员工表和部门表连接起来,以获取员工所在的部门名称。

通过ORDER BY子句,我们按照工资降序排列结果,并使用LIMIT限制结果的数量为5。

3. 查询员工表中每个部门工资最高的员工的姓名、工资和部门名称。

```sqlSELECT AS 姓名, e.salary AS 工资, AS 部门名称FROM 员工表 eJOIN 部门表 d ON e.dept_id = d.idWHERE (e.dept_id, e.salary) IN (SELECT dept_id, MAX(salary)FROM 员工表GROUP BY dept_id);```在这个查询中,我们使用子查询来找到每个部门中工资最高的员工。

通过WHERE子句,我们筛选出满足条件的员工记录,并获取他们的姓名、工资和部门名称。

数据库语言查询练习题(4-25)

数据库语言查询练习题(4-25)

单表查询:1、查询<学生信息表>,查询学生"张三"的全部基本信息2、查询<学生信息表>,查询学生"张三"和”李四”的基本信息3、查询<学生信息表>,查询姓"张"学生的基本信息4、查询<学生信息表>,查询姓名中含有"四"字的学生的基本信息5、查询<学生信息表>,查询姓名长度为三个字,姓“李”,且最后一个字是“强”的全部学生信息。

6、查询<学生信息表>,查询姓"张"或者姓”李”的学生的基本信息。

7、查询<学生信息表>,查询姓"张"并且"所属省份"是"北京"的学生信息8、查询<学生信息表>,查询"所属省份"是"北京"、”新疆”、”山东”或者"上海"的学生的信息9、查询<学生信息表>,查询姓"张",但是"所属省份"不是"北京"的学生信息Select *10、查询<学生信息表>,查询全部学生信息,并按照“性别”排序,性别相同的情况下按照“所属省份”排序,所属省份相同的情况下再按照“班级”排序11、查询<学生信息表>,查询现有学生都来自于哪些不同的省份12、查询<学生选修信息表>,查询没有填写成绩的学生的学号、课程号和成绩13、查询<学生选修信息表>,查询全部填写了成绩的学生的选修信息,并按照“成绩”从高到低进行排序聚合查询1、统计<学生信息表>,统计共有多少个学生2、统计<学生信息表>,统计年龄大于20岁的学生有多少个3、统计<学生信息表>,统计入学时间在1980年至1982年的学生人数4、统计<学生选修信息表>,统计学号为"S001"的学生的平均成绩5、统计<学生选修信息表>,统计学号为"S001"的学生的总成绩6、统计<学生选修信息表>,查询课程号为”C001”的课程的最高成绩7、统计<学生信息表>,查询所有学生中的最大年龄是多少分组查询练习1、统计<学生选修信息表>,统计每个课程的选修人数2、统计<学生选修信息表>,统计每个同学的总成绩3、统计<学生信息表>,统计每个班级中每种性别的学生人数,并按照班级排序4、统计<学生选修信息表>,统计每门课程的平均成绩,并按照成绩降序排序5、统计<学生选修信息表>,显示有两门以上课程不及格的学生的学号6、统计<学生信息表>,统计每个班级中的最大年龄是多少嵌套查询练习1、用子查询实现,查询选修“高等数学”课的全部学生的总成绩2、用子查询实现,统计<学生选修信息表>,显示学号为"S001"的学生在其各科成绩中,最高分成绩所对应的课程号和成绩3、用子查询实现,查询2班选修"数据库技术"课的所有学生的成绩之和4、用子查询实现,查询3班"张三"同学的"测试管理"成绩一、单表查询练习1、查询<学生信息表>,查询学生"张三"的全部基本信息Select *from A_studentinfowhere sname='张三'2、查询<学生信息表>,查询学生"张三"和”李四”的基本信息Select *from A_studentinfowhere sname='张三'or sname='李四'3、查询<学生信息表>,查询姓"张"学生的基本信息Select *from A_studentinfowhere sname like '张%'4、查询<学生信息表>,查询姓名中含有"四"字的学生的基本信息Select *from A_studentinfowhere sname like '%四%'5、查询<学生信息表>,查询姓名长度为三个字,姓“李”,且最后一个字是“强”的全部学生信息。

查询练习试卷1(题后含答案及解析)

查询练习试卷1(题后含答案及解析)

查询练习试卷1(题后含答案及解析)题型有:1. 选择题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.以下关于选择查询叙述错误的是______。

A.根据查询准则,从一个或多个表中获取数据并显示结果B.可以对记录进行分组C.可以对查询记录进行总计、计数和平均等计算D.查询的结果是一组数据的“静态集”正确答案:D 涉及知识点:查询2.以下不属于SQL查询的是______。

A.联合查询B.传递查询C.子查询D.选择查询正确答案:D 涉及知识点:查询3.如果经常要从几个表中提取数据,最好的查询方法是______。

A.操作查询B.生成表查询C.参数查询D.选择查询正确答案:B 涉及知识点:查询4.Access提供了组成查询准则的运算符是______。

A.关系运算符B.逻辑运算符C.特殊运算符D.以上都是正确答案:D 涉及知识点:查询5.当条件(Ci=1~N)全都为真时,F为假的表达式为______。

A.F=B.F=C.F=Not(C1AndC2And...“:And.”CN)D.以上都不对正确答案:C 涉及知识点:查询6.下列算式正确的是______。

A.Int(5)=3B.Int(5)=2C.Int(5)=5D.Int(5)=0.5正确答案:B 涉及知识点:查询7.函数Sgn(-2)返回值是______。

A.0B.1C.-1D.-2正确答案:C 涉及知识点:查询8.从字符串S(“abcdefg”)中返回子串B(“cd”)的正确表达式为______。

A.Mid(S,3,2)B.Right(Left(S,4),2)C.t,eft(mght(S,5),2)D.以上都可以正确答案:D 涉及知识点:查询9.假设某数据库表中有一个姓名字段,查找姓名张三或李四的记录的准则是______。

A.III(“张三”,”李四”)B.Like”张三”AndLike”李四”C.Like(“张三”,”李四”)D.”张三”And”李四”正确答案:A 涉及知识点:查询10.假设某数据库表中有一个“学生编号”字段,查找编号第3、4个字符为“03’’的记录的准则是______。

sql查询练习题含答案

sql查询练习题含答案

--(1)查询20号部门的所有员工信息。

select * from emp e where =20;--(2)查询奖金(COMM)高于工资(SAL)的员工信息。

select * from emp where comm>sal;--(3)查询奖金高于工资的20%的员工信息。

select * from emp where comm>sal*;--(4)查询10号部门中工种为MANAGER和20号部门中工种为CLERK的员工的信息。

select * from emp ewhere =10 and ='MANAGER')or =20 and ='CLERK')--(5)查询所有工种不是MANAGER和CLERK,--且工资大于或等于2000的员工的详细信息。

select * from empwhere job not in('MANAGER','CLERK') and sal>=2000;--(6)查询有奖金的员工的不同工种。

select * from emp where comm is not null;--(7)查询所有员工工资和奖金的和。

select +nvl,0)) from emp e;--(8)查询没有奖金或奖金低于100的员工信息。

select * from emp where comm is null or comm<100;--(9)查询员工工龄大于或等于10年的员工信息。

select * from emp where (sysdate-hiredate)/365>=10;--(10)查询员工信息,要求以首字母大写的方式显示所有员工的姓名。

select initcap(ename) from emp;select upper(substr(ename,1,1))||lower(substr(ename,2)) from emp;--(11)显示所有员工的姓名、入职的年份和月份,按入职日期所在的月份排序,--若月份相同则按入职的年份排序。

数据库查询练习题

数据库查询练习题

数据库查询练习题1.SQL是那几个英文单词的缩写_B____。

2.A. Standard Query Language B. Structured Query LanguageC. Select Query Language D.以上都不是3.SQL语句中条件短语的关键字是__A____。

A. WHERE B. FOR C. WHILE D.CONDITIO4.与表达式:成绩 BETWEEN 0 AND 100等效率的表达式是______。

A.成绩>0 and 100 B.成绩>=0 and <=100C.成绩>=0 and 成绩<=100 D.成绩>0 and 成绩<1005.LIKE短语中”%”代表的意思是______。

A.一个字符 B.2个字符C.3个字符D.多个字符6.LIKE短语中”_”代表的意思是______。

A.一个字符 B.2个字符C.3个字符 D.多个字符7.查询姓名中含有丽字的表达式对的是_____。

A.姓名 =’*丽*’B.姓名 =’_丽_’C.姓名 like ’%丽%’ D.姓名 like ’_丽_’8.查询不姓王的正确表达式______。

A.姓名<>’王’B.姓名 like ‘王_’C.姓名 not like ‘王%’ D.left(姓名,1)<>‘王’9.Distinct的作用是______。

A.去掉重复值B.修改值C.增加值D.删除值10.去掉重复值的短语是______。

A.DISTINCTB.GROUP BYC.ORDER BYD.REPEAT11.以下函数中求和的函数是______。

A)SUM() B)COUNT() C)AVG() D)MAX()12.求平均值的函数是______。

A)SUM() B)COUNT() C)AVG() D)MAX()13.求最大值的函数是______。

14.A)SUM() B)COUNT() C)AVG()D)MAX()15.求最小值的函数是______。

sql查询练习题

sql查询练习题

上图为企业订单管理系统的E-R图,提供对职工信息、客户信息、供应商信息、产品信息、订单信息、订单明细进行管理。

<pk>描述为主键,<fk>描述为外键,外键约束通过图下箭头线进行标注。

其中职员信息表中的sex取值为m或f,表示为男和女。

在创建的表中添加数据,在下面的查询中用到的数据,自己准备。

--1、查找员工的编号、姓名、部门和出生日期,如果出生日期为空值,显示日期不详,并按部门排序输出,日期格式为yyyy-mm-dd。

2查找与喻自强(数据库表中员工的姓名)在同一个部门的员工ID、员工姓名、性别、部门和职称3 按部门进行汇总,输出部门名称和统计部门总工资。

4、查找商品名称为14寸显示器商品的销售情况,显示该商品的编号、销售数量、单价和金额5 在销售明细表中按产品编号进行汇总,统计每种产品的销售数量和金额6 按客户编号统计每个客户1996年的订单总金额超过50万的客户编号和订单总金额7 查找有销售记录的客户编号、名称和订单总额8 查找在1997年中有销售记录的客户编号、名称和订单总额9 查找一次销售最大的销售记录10 查找至少有3次销售的业务员名单和销售日期11 用存在量词Exists查找没有订货记录的客户名称12 使用左外连接查找每个客户的客户编号、名称、订货日期、订单金额、订货日期,日期格式为yyyy-mm-dd,按客户编号排序,同一客户再按订单降序排序输出13 查找产品“16M DRAM”的销售情况,要求显示相应的销售员的姓名、性别,销售日期、销售数量和金额,其中性别用男、女表示14 查找每个人的销售记录,要求显示销售员的编号、姓名、性别、--产品名称、数量、单价、金额和销售日期15 查找销售金额最大的客户名称和总货款16 查找销售总额少于1000元的销售员编号、姓名和销售额17 查找至少销售了3种商品的客户编号、客户名称、商品编号、商品名称、数量和金额18 查找至少与客户“世界技术开发公司”销售相同的客户编号、名称和商品编号、商品名称、数量和金额19 查找表中所有姓刘的职工的工号,部门,薪水20 查找所有定单金额高于20000的所有信息(包括客户编号和名称)21 统计表中员工的薪水在40000-60000之间的人数22 查询表中的每个部门的职工的平均工资,但只查询”住址”是”上海市”的员工23 将表中住址为"上海市"的员工住址改为"北京市"24 查找业务部或会计部的女员工的基本信息25 显示每种产品的销售金额总和,并依销售金额由大到小输出。

3-2(查询)笔试真题练习2

3-2(查询)笔试真题练习2

交叉表查询(1)2005.9(填6)创建交叉表查询时,必须对行标题和【6】列标题进行分组(Group By)操作。

(2)2006.9(21)已经建立了包含“姓名”、“性别”、“系别”、“职称”等字段的“tEmployee”表。

若以此表为数据源创建查询,计算各系不同性别的总人数和各类职称人数,并显示如下图所示的结果。

正确的设计是A)B)C)D)(3)2007.4(19)在创建交叉表查询时,列标题字段的值显示在交叉表的位置是A)第一行B)第一列C)上面若干行D)左面若干列参数查询(1)2008.4(填7)在学生成绩表中,如果需要根据输入的学生姓名查找学生的成绩,需要使用的是(参数)查询(2)2008.9(21)创建参数查询时,在查询设计视图准则行中应将参数提示文本放置在()。

A){ }中 B)()中C)[ ]中 D)< >中操作查询(1)2005.9(26)下列不属于操作查询的是A)参数查询B)生成表查询C)更新查询D)删除查询(2)2008.4(17)如果在数据库中已有同名的表,要通过查询覆盖原来的表,应该使用的查询类型是A>删除B>追加C>生成表D>更新(3)2006.9(填10)如果要将某表中的若干记录删除,应该创建_删除查询。

(4)2005.4(20)下面显示的是查询设计视图,从设计视图所示的内容中判断此查询将显示A)出生日期字段值B)所有字段值C)除出生日期以外的所有字段值 D)雇员ID字段值(5)2007.9(17)将表A的记录添加到表B中,要求保持表B中原有的记录,可以使用的查询是______。

A)选择查询B)生成表查询C)追加查询D)更新查询(6)2005.9(19)下面显示的是查询设计视图的“设计网格”部分,从此部分所示的内容中可以判断出要创建的查询是A)删除查询B)生成表查询C)选择查询D)更新查询SQL(1)2006.4(18)下图是使用查询设计器完成的查询,与该查询等价的SQL语句是A.select学号,数学from sc where 数学>(select avg(数学)from sC).B.select学号where 数学>(select avg(数学)from sC.C.select 数学avg(数学)from sC.D.select 数学>(select avg(数学)from sC.(2)2006.9(13)SQL的含义是A)结构化查询语言B)数据定义语言C)数据库查询语言D)数据库操纵与控制语言(3)2006.9(15)在SQL的SELECT语句中,用于实现选择运算的是A)FOR B)WHILE C)IF D)WHERE(4)2007.4(20)在Access中已建立了“学生”表,表中有“学号”、“姓名”、“性别”和“入学成绩”等字段。

查询练习题0627

查询练习题0627
--列出在同一部门入职日期晚但工资高于其他同事的员工:名字、工资、入职日期。
--hr.regions、hr.countries、hr.locations、hr.departments、hr.jobs、hr.employees表
--各个部门平均、最大、最小工资、人数,按照部门号升序排列。
--各个部门中工资大于5000的员工人数。
--统计每个部门的员工人数
--统计每个部门的平均薪资
--
select * from employees2;
--按部门division_id来统计每个部门的最低、最高、和平均薪资
--按部门division_id 和职位 job_id 来统计每个部门每个职位的最低、最高、平均薪资
--按部门division_id 和职位 job_id 来统计每个部门每个职位的薪资总和,并且输出每个部门的薪资总和和所有的薪资总和
--各个部门平均工资和人数,按照部门名字升序排列。
--列出每个部门中有同样工资的员工的统计信息,列出他们的部门号,工资,人数。
--列出同部门中工资高于1000?的员工数量超过2?人的部门,显示部门名字、地区名称。
--哪些员工的工资,高于整个公司的平均工资,列出员工的名字和工资(降序)。
--列出在同一部门共事,入职日期晚但工资高于其他同事的员工:名字、工资、入职日期(关联子查询)。
--哪些员工跟Den(FIRST_NAME)、Raphaely(LAST_NAME)不在同一个部门(非关联子查询)。
--哪些员工跟Den(FIRST_NAME)、Raphaely(LAST_NAME)不在同一个部门(关联子查询)。
--查询EMP、DEPT表,输出的列包含员工姓名、工资、部门编号、部门名称、部门地址.

sql 查询 练习题

sql 查询 练习题

sql 查询练习题SQL查询练习题SQL是一种用于管理和操作关系型数据库的语言,它可以让我们轻松地从数据库中提取所需的数据。

在实际应用中,熟练掌握SQL查询语句的编写是非常重要的。

为了帮助大家提高SQL查询的能力,下面将给出一些SQL查询练习题。

1. 查询所有员工的姓名和工资。

```sqlSELECT 姓名, 工资 FROM 员工表;```2. 查询所有部门的名称和员工数量。

```sqlSELECT 部门名称, COUNT(*) AS 员工数量 FROM 员工表 GROUP BY 部门名称; ```3. 查询所有工资高于平均工资的员工信息。

```sqlSELECT * FROM 员工表 WHERE 工资 > (SELECT AVG(工资) FROM 员工表);```4. 查询每个部门工资最高的员工信息。

```sqlSELECT * FROM 员工表 WHERE (部门名称, 工资) IN (SELECT 部门名称, MAX(工资) FROM 员工表 GROUP BY 部门名称);```5. 查询没有分配部门的员工信息。

```sqlSELECT * FROM 员工表 WHERE 部门名称 IS NULL;```6. 查询每个部门的平均工资,并按照平均工资降序排列。

```sqlSELECT 部门名称, AVG(工资) AS 平均工资 FROM 员工表 GROUP BY 部门名称ORDER BY 平均工资 DESC;```7. 查询每个部门的员工数量,并按照员工数量升序排列。

```sqlSELECT 部门名称, COUNT(*) AS 员工数量 FROM 员工表 GROUP BY 部门名称ORDER BY 员工数量 ASC;```8. 查询员工表中工资排名前10的员工信息。

```sqlSELECT * FROM 员工表 ORDER BY 工资 DESC LIMIT 10;```9. 查询每个部门的员工工资排名前3的员工信息。

多表查询sql练习题

多表查询sql练习题

多表查询sql练习题多表查询sql练习题1、⽤⼀条SQL 语句查询出每门课都⼤于80 分的学⽣姓名 name course grade 张三语⽂ 81 张三数学 75 李四语⽂ 76 李四数学 90 王五语⽂ 81 王五数学 100 王五英语 90/*创建表*/CREATE TABLE stu(stu_name VARCHAR(255),Course CHAR(2),grade INT);/*插⼊数据*/INSERT INTO stu VALUES('张三','语⽂',81);INSERT INTO stu VALUES('张三','数学',75);INSERT INTO stu VALUES('李四','语⽂',76);INSERT INTO stu VALUES('李四','数学',90);INSERT INTO stu VALUES('王五','语⽂',81);INSERT INTO stu VALUES('王五','数学',100);INSERT INTO stu VALUES('王五','英语',90);/*查询*/SELECT DISTINCT stu_name FROM stuWHERE stu_name NOT IN(SELECT stu_name FROM stu WHERE grade<=80);/*分析:先查出成绩⼩于80的学⽣姓名,再查出不在成绩⼩于80的学⽣姓名中的学⽣(去除重复记录),即可*/2、现有学⽣表如下: ⾃动编号学号姓名课程编号课程名称分数 1 2005001 张三 0001 数学 69 2 2005002 李四 0001 数学 89 3 2005001张三 0001 数学 69 删除除了⾃动编号不同, 其他都相同的学⽣冗余信息/*创建表*/CREATE TABLE stu(id INT(7) PRIMARY KEY AUTO_INCREMENT,number INT(7),stu_name VARCHAR(255),course_id INT(7),course_name VARCHAR(255),score INT(7));/*插⼊数据*/INSERT INTO stu VALUES(NULL,2005001,'张三',0001,'数学',69);INSERT INTO stu VALUES(NULL,2005002,'李四',0002,'数学',89);INSERT INTO stu VALUES(NULL,2005001,'张三',0001,'数学',69);/*删除重复数据*/DELETE FROM stuWHERE stu.`id` NOT IN(SELECT `mid` FROM(SELECT MIN(id) `mid` FROM stuGROUP BY stu.`stu_name`,stu.`number`,stu.`course_id`,stu.`course_name`,stu.`score`) t);/*分析:先按学号姓名课程编号课程名称分数分组,然后查出分组中的最⼩id(如果满⾜删除条件则id重复,取最⼩即可)得到最⼩id的集合,然后删除id不在集合中的数据(id不在集合中说明满⾜删除条件,即数据重复)*/3、⼀个叫 team 的表,⾥⾯只有⼀个字段name, ⼀共有4 条纪录,分别是a,b,c,d, 对应四个球对,现在四个球对进⾏⽐赛,⽤⼀条sql 语句显⽰所有可能的⽐赛组合SELECT t1.`t_name`, t2.`t_name`FROM team t1,team t2WHERE t1.`t_name`<t2.`t_name`;/*参考资料:https:///qq_37958608/article/details/87531029*/4、怎么把这样⼀个数据表 year month amount 1991 1 1.1 1991 2 1.2 1991 3 1.3 1991 4 1.4 1992 1 2.1 1992 2 2.2 1992 3 2.3 1992 4 2.4 查成这样⼀个结果? year m1 m2 m3 m4 1991 1.1 1.2 1.3 1.4 1992 2.1 2.2 2.3 2.4/*创建date表*/CREATE TABLE DATE(YEAR VARCHAR(20),MONTH INT(10),amount VARCHAR(20));/*插⼊数据*/INSERT INTO DATE VALUES('1991', 1, '1.1');INSERT INTO DATE VALUES('1991', 2, '1.2');INSERT INTO DATE VALUES('1991', 3, '1.3');INSERT INTO DATE VALUES('1991', 4, '1.4');INSERT INTO DATE VALUES('1992', 1, '2.1');INSERT INTO DATE VALUES('1992', 2, '2.2');INSERT INTO DATE VALUES('1992', 3, '2.3');INSERT INTO DATE VALUES('1992', 4, '2.4');/*查询*/SELECT YEAR,(SELECT amount FROM `date` d WHERE MONTH=1 AND d.year=date.year) AS m1,(SELECT amount FROM `date` d WHERE MONTH=2 AND d.year=date.year) AS m2,(SELECT amount FROM `date` d WHERE MONTH=3 AND d.year=date.year) AS m3,(SELECT amount FROM `date` d WHERE MONTH=4 AND d.year=date.year) AS m4FROM DATE GROUP BY YEAR/*参考资料:https:///vivian_python/article/details/102793872*/5、创建数据表(学⽣表 Student、教师表 Teacher、成绩表 SC)/*学⽣表 Student*/CREATE TABLE Student(Sid VARCHAR(6), Sname VARCHAR(10), Sage DATETIME, Ssex VARCHAR(10)); INSERT INTO Student VALUES('01' , '赵雷' , '1990-01-01' , '男');INSERT INTO Student VALUES('02' , '钱电' , '1990-12-21' , '男');INSERT INTO Student VALUES('03' , '孙风' , '1990-05-20' , '男');INSERT INTO Student VALUES('04' , '李云' , '1990-08-06' , '男');INSERT INTO Student VALUES('05' , '周梅' , '1991-12-01' , '⼥');INSERT INTO Student VALUES('06' , '吴兰' , '1992-03-01' , '⼥');INSERT INTO Student VALUES('07' , '郑⽵' , '1989-07-01' , '⼥');INSERT INTO Student VALUES('08' , '王菊' , '1990-01-20' , '⼥')/*成绩表 SC*/CREATE TABLE SC(Sid VARCHAR(10), Cid VARCHAR(10), score DECIMAL(18,1));INSERT INTO SC VALUES('01' , '01' , 80);INSERT INTO SC VALUES('01' , '02' , 90);INSERT INTO SC VALUES('01' , '03' , 99);INSERT INTO SC VALUES('02' , '01' , 70);INSERT INTO SC VALUES('02' , '02' , 60);INSERT INTO SC VALUES('02' , '03' , 80);INSERT INTO SC VALUES('03' , '01' , 80);INSERT INTO SC VALUES('03' , '02' , 80);INSERT INTO SC VALUES('03' , '03' , 80);INSERT INTO SC VALUES('04' , '01' , 50);INSERT INTO SC VALUES('04' , '02' , 30);INSERT INTO SC VALUES('04' , '03' , 20);INSERT INTO SC VALUES('05' , '01' , 76);INSERT INTO SC VALUES('05' , '02' , 87);INSERT INTO SC VALUES('06' , '01' , 31);INSERT INTO SC VALUES('06' , '03' , 34);INSERT INTO SC VALUES('07' , '02' , 89);INSERT INTO SC VALUES('07' , '03' , 98)/*教师表 Teacher*/CREATE TABLE Teacher(Tid VARCHAR(10),Tname VARCHAR(10));INSERT INTO Teacher VALUES('01' , '张三');INSERT INTO Teacher VALUES('02' , '李四');INSERT INTO Teacher VALUES('03' , '王五')需求1:查询” 01 “课程⽐” 02 “课程成绩⾼的学⽣的信息及课程分数SELECT s.*,sc.`score` FROM student sNATURAL JOIN scWHERE s.sid IN(SELECT t1.sid FROM(SELECT * FROM sc WHERE cid=01) t1,(SELECT * FROM sc WHERE cid=02) t2WHERE t1.sid=t2.sid AND t2.score>t1.score);/*参考资料:https:///ql70me/p/10329630.html*/需求2:查询平均成绩⼤于等于 60 分的同学的学⽣编号和学⽣姓名和平均成绩SELECT student.sid,student.sname,a.avg_score FROM studentINNER JOIN(SELECT Sid,AVG(score) avg_score FROM scGROUP BY sidHAVING AVG(score )>=60) aON student.sid=a.sid/*分析:先按sid分组查询出sid和平均成绩avg_score得到新表a(注意:必须取别名),然后将学⽣表和a表内连接查询出sid相等的学⽣即可*/需求3:查询在 SC 表存在成绩的学⽣信息SELECT * FROM studentWHERE sid IN(SELECT sid FROM sc GROUP BY sid) t;需求4:查询所有同学的学⽣编号、学⽣姓名、选课总数、所有课程的总成绩(没成绩的显⽰为 null ) SELECT s.sid,s.sname,a.cid_count FROM student sLEFT OUTER JOIN(SELECT sid ,COUNT(cid) cid_count FROM sc GROUP BY sid) a ON s.`Sid`=a.sid;需求5:查有成绩的学⽣信息SELECT * FROM studentWHERE sid IN(SELECT sid FROM scGROUP BY sid);。

(完整版)《ACCESS2010应用基础》第四章查询练习题1

(完整版)《ACCESS2010应用基础》第四章查询练习题1
D.<Date()-10
26.要查找成绩在60至80的记录,
A.成绩BETWEEN60AND80
C.成绩BETWEEN60AND 81
C.>Date()-1O
正确的条件表达式是()
B.成绩BETWEEN60TO80
D.成绩BETWEEN60AND 70

27.在查询设计器中,查询条件中的日期型数据两边加上(
C.可以添加数据表,也可以添加查询
17.在查询设计器下半部分中,不包含(
A.字段B.表C.显示
18.下列查询条件表达式合法的是(
A.0>=成绩<=100B.100>=M绩<=0
C.成绩>=0,成绩<=100D.成绩>=0And成绩<=100
19.与表达式”A Between20And80”功能相同的表达式是()
()27.可以直接在查询设计器中设定数据表或查询之间的关系
()28.在同一条件行的不同列中输入多个条件,它们彼此的关系为 逻辑与关系。
()29.如果数据表之间创建了关系,则添加到查询设计器中时,关 系会自动显示
()30.SQL查询必须在多表查询中使用
()31.SQL查询中SELECTS句后面只能使用一个字段名。
在查询准则中可以使用通配符
性别]LIKE
男”OR [性别]二“女”是合法的查询条件
表达式
()23.使用准则LIKE
川成都”
()24当用逻辑运算符
假、
四川?“查询时可以查询出“四川省”和“四
NOT连接的表达式为真,则整个表达式为
()25.特殊运算符“IN”用于指定一个字段为空
()26.创建基于多个数据表的查询时,应该在多个数据表之间建立 关系。

mysql数据库查询练习45题

mysql数据库查询练习45题

mysql数据库查询练习45题#建学⽣信息表studentcreate table student(sno varchar(20) not null primary key,sname varchar(20) not null,ssex varchar(20) not null,sbirthday datetime,class varchar(20));#建⽴教师表create table teacher(tno varchar(20) not null primary key,tname varchar(20) not null,tsex varchar(20) not null,tbirthday datetime,prof varchar(20),depart varchar(20) not null);#建⽴课程表coursecreate table course(cno varchar(20) not null primary key,cname varchar(20) not null,tno varchar(20) not null,foreign key(tno) references teacher(tno));#建⽴成绩表create table score(sno varchar(20) not null primary key,foreign key(sno) references student(sno),cno varchar(20) not null,foreign key(cno) references course(cno),degree decimal);#添加学⽣信息insert into student values('108','曾华','男','1977-09-01','95033');insert into student values('105','匡明','男','1975-10-02','95031');insert into student values('107','王丽','⼥','1976-01-23','95033');insert into student values('101','李军','男','1976-02-#添加教师表insert into teacher values('804','李诚','男','1958-12-02','副教授','计算机系');insert into teacher values('856','张旭','男','1969-03-12','讲师','电⼦⼯程系');insert into teacher values('825','王萍','⼥','1972-05-05','助教','计算机系');insert into teacher values('831','刘冰','⼥','1977-08-14','助教','电⼦⼯程系');#添加课程表insert into course values('3-105','计算机导论','825');insert into course values('3-245','操作系统','804');insert into course values('6-166','数字电路','856');insert into course values('9-888','⾼等数学','831');#添加成绩表insert into score values('103','3-245','86');insert into score values('105','3-245','75');insert into score values('109','3-245','68');insert into score values('103','3-105','92');insert into score values('105','3-105','88');insert into score values('109','3-105','76');insert into score values('103','3-105','64');insert into score values('105','3-105','91');insert into score values('109','3-105','78');insert into score values('103','6-166','85');insert into score values('105','6-166','79');insert into score values('109','6-166','81');题⽬:1、查询Student表中的所有记录的Sname、Ssex和Class列。

SQL查询练习题

SQL查询练习题

更新操作
(1)往关系C中插入一个课程元组(‘C8’,‘VC++’, ‘BAO’) INSERT INTO C VALUES(‘C8’,’VC++’,’BAO’) (2)在SC中删除尚无成绩的选课元组。 DELETE FROM SC WHERE GRADE IN NULL (3)把选修LIU老师课程的女同学选课元组全部删去。 DELETE FROM SC WHERE S# IN(SELECT S# FROM S WHERE SEX=‘F’) AND C# IN(SELECT C# FROM C WHERE TEACHER=‘LIU’)
(10)求选修C4课程的女学生的平均年龄。 SELECT AVG(AGE) FROM S WHERE SEX=‘女’ AND S# IN (SELECT S# FROM SC WHERE C#=‘C4’)
设教学数据库中有三个关系: 学生关系 S(S#,SNAME,AGE,SEX) 选课关系 SC(S#,C#,GRADE) 课程关系 C(C#,CNAME,TEACHER)
(11)求刘老师所授课程的每门课程的平均成绩。 SELECT C.C#,AVG(GRADE) FROM C,SC WHERE C.C#=SC.C# AND TEACHER=‘LIU’ GROUP BY C.C# 或SELCT C#,AVG(GRADE) FROM SC WHERE C# IN(SELECT C# FROM C WHERE TEACHER=‘LIU’) GROUP BY C#
设教学数据库中有三个关系: 学生关系 S(S#,SNAME,AGE,SEX) 选课关系 SC(S#,C#,GRADE) 课程关系 C(C#,CNAME,TEACHER) (16)求年龄大于女同学平均年龄的男学生姓名和年龄。 SELECT SNAME,AGE FROM S WHERE SEX=‘男’ AND AGE>(SELECT AVG(AGE) FROM S WHERE SEX=‘女’)

数据库查询练习题

数据库查询练习题

数据库查询练习题一、选择题(每题2分,共10分)1. 在SQL中,用于查询数据的关键字是:A. SELECTB. INSERTC. UPDATED. DELETE2. 下列哪个选项不是SQL数据类型?A. INTB. FLOATC. DATED. BOOLEAN3. 在SQL中,使用哪个关键字可以对查询结果进行排序?A. ORDER BYB. SORT BYC. RANK BYD. ARRANGE BY4. 以下哪个不是SQL聚合函数?A. COUNTB. AVGC. SUMD. DISTINCT5. SQL语句中,用于指定查询条件的关键字是:A. WHEREB. IFC. CASED. WHEN二、填空题(每空2分,共20分)6. 在SQL查询中,使用________关键字可以限制查询结果的数量。

7. 要查询员工表中工资最高的员工,可以使用聚合函数________和________。

8. SQL中的________子句允许我们对查询结果进行分组。

9. 使用________函数可以返回查询结果中的唯一值。

10. 在SQL查询中,________关键字用于连接两个或多个表。

三、简答题(每题10分,共30分)11. 解释SQL中的内连接(INNER JOIN)和外连接(OUTER JOIN)的区别。

12. 描述SQL中使用子查询(Subquery)的场景及其优势。

13. 阐述SQL中事务(Transaction)的概念及其重要性。

四、应用题(每题15分,共30分)14. 假设有一个名为“Employees”的表,包含以下列:EmployeeID, FirstName, LastName, DepartmentID, Salary。

编写一个SQL查询,列出每个部门的平均工资。

15. 给定一个名为“Orders”的表,包含以下列:OrderID, CustomerID, OrderDate, TotalAmount。

SQL查询语句练习(50题)

SQL查询语句练习(50题)

SQL查询语句练习(50题)Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname,T#) 课程表SC(S#,C#,score) 成绩表Teacher(T#,Tname) 教师表问题:1、查询“001”课程比“002”课程成绩高的所有学生的学号;2、查询平均成绩大于60分的同学的学号和平均成绩;3、查询所有同学的学号、姓名、选课数、总成绩;4、查询姓“李”的老师的个数;5、查询没学过“叶平”老师课的同学的学号、姓名;6、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名;7、查询学过“叶平”老师所教的所有课的同学的学号、姓名;8、查询课程编号“002”的成绩比课程编号“001”课程低的所有同学的学号、姓名;9、查询所有课程成绩小于60分的同学的学号、姓名;10、查询没有学全所有课的同学的学号、姓名;11、查询至少有一门课与学号为“1001”的同学所学相同的同学的学号和姓名;12、查询至少学过学号为“001”同学所有一门课的其他同学学号和姓名;13、把“SC”表中“叶平”老师教的课的成绩都更改为此课程的平均成绩;14、查询和“1002”号的同学学习的课程完全相同的其他同学学号和姓名;15、删除学习“叶平”老师课的SC表记录;16、向SC表中插入一些记录,这些记录要求符合以下条件:没有上过编号“003”课程的同学学号、002号课的平均成绩;17、按平均成绩从高到低显示所有学生的“数据库”、“企业管理”、“英语”三门的课程成绩,按如下形式显示:学生ID,,数据库,企业管理,英语,有效课程数,有效平均分18、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分19、按各科平均成绩从低到高和及格率的百分数从高到低顺序20、查询如下课程平均成绩和及格率的百分数(用"1行"显示): 企业管理(001),马克思(002),OO&UML (003),数据库(004)21、查询不同老师所教不同课程平均分从高到低显示22、查询如下课程成绩第 3 名到第 6 名的学生成绩单:企业管理(001),马克思(002),UML (003),数据库(004)[学生ID],[学生姓名],企业管理,马克思,UML,数据库,平均成绩23、统计列印各科成绩,各分数段人数:课程ID,课程名称,[100-85],[85-70],[70-60],[ <60]24、查询学生平均成绩及其名次25、查询各科成绩前三名的记录:(不考虑成绩并列情况)26、查询每门课程被选修的学生数27、查询出只选修了一门课程的全部学生的学号和姓名28、查询男生、女生人数29、查询姓“张”的学生名单30、查询同名同性学生名单,并统计同名人数31、1981年出生的学生名单(注:Student表中Sage列的类型是datetime)32、查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序排列33、查询平均成绩大于85的所有学生的学号、姓名和平均成绩34、查询课程名称为“数据库”,且分数低于60的学生姓名和分数35、查询所有学生的选课情况;36、查询任何一门课程成绩在70分以上的姓名、课程名称和分数;37、查询不及格的课程,并按课程号从大到小排列38、查询课程编号为003且课程成绩在80分以上的学生的学号和姓名;39、求选了课程的学生人数40、查询选修“叶平”老师所授课程的学生中,成绩最高的学生姓名及其成绩41、查询各个课程及相应的选修人数42、查询不同课程成绩相同的学生的学号、课程号、学生成绩43、查询每门功成绩最好的前两名44、统计每门课程的学生选修人数(超过10人的课程才统计)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.下图显示的是查询设计视图的“设计网格”部分。
从所显示的内容中可以判断出该查询要查找的是——。(2006年9月)
A)性别为“女”并且1980以前参加工作的记录
B)性别为“女”并且1980以后参加工作的记录
c)性别“女”或者1980以前参加工作的记录
D)性别为“女”或者1980以后参加工作的记录
解析:在图中创建的查询中,查询条件涉及了两个字段“性别”和“工作时间”,条件要求“性别”为女,“工作时间” <1980年,即1980年以前参加工作的记录。
4.在图中,与查询设计器的筛选标签中所设置的筛选功能相同的表达式是
A) 成绩表.综合成绩>=80 AND 成绩表.综合成绩<=90
B) 成绩表.综合成绩>80 AND 成绩表.综合成绩<90
C) 80<=成绩表.综合成绩<=90
D) 80<成绩表.综合成绩<90
解析:由题目中的图片可以得出:查询条件是“综合成绩在80和90之间包含80和90”。选项B查询条件设置错误;答案C、D不符合SQL语法规则。
2.创建交叉表查询,必须对行标题和列标题进行分组操作。
3.在SQL的SELECT语句中,用Order by短语对查询的结果进行排序。
4.在SQL的SELECT语句中,用于实现选择运算的短语是where。
5.若要查找最近20天之内参加工作的职工记录,查询条件为
Between Date()-20 and Date()
SELECT性别,avg(入学成绩)FROM学生GROUPBY性别
其功能是
A)计算并显示所有学生的入学成绩的平均值
B)按性别分组计算并显示所有学生的入学成绩的平均值
C)计算并显示所有学生的性别和入学成绩的平均值
D)按性别分组计算并显示性别和入学成绩的平均值
6.SQL查询语句中,用来指定对选定的字段进行排序的子句是
6.若要查询某字段的值为“JSJ”的记录,在查询设计视图对应字段的准则中,错误的表达式是——。(2006年9月)
A)JSJ B)"JSJ"C)”*JSJ”D)Like "JSJ"
解析:在查询字段中使用“*”,表示查询所有字段的值。“*JSJ*”表示查询某字段内容中间含的JSJ的值的记录。
7.已经建立了包含“姓名”、“性别”、“系别”、“职称”等字段的tEmployee表。若以此表为数据源创建查询,计算各系不同性别的总人数和各类职称人数,并显示如图所示的结果。
2.下面显示的是查询设计视图的设计网格部分,从图所示的内容中,可以判断出耍创建的查询是。(2005年4月)
A)删除查询B)追加查询C)生成表查询 D)更新查询
解析:选择追加查询以后,“设计网格”中会显示一个“追加到”行,本题的图中有这一行,因此应该是追加查询。
3.如图所示为使用查询设计器完成的查询,与该查询等价的SQL语句是(2006年4月)。
A)ORDER BYB)FROM C)WHERE D)HAVING
7.下列关于SQL语句的说法中,错误的是
A)INSERT语句可以向数据表中追加新的数据记录
B)UPDATE语句用来修改数据表中已经存在的数据记录
C)DELETE语句用来删除数据表中的记录
D)SELECT...INTO语句用来将两个或更多个表或查询中的字段合并到查询结果的一个字段中
A)select学号,数学from sc where数学>(select avg(数学) from sc)
B)select学号where数学>(selectavg(数学)fromsc)
C)select数学avg(数学)fromsc)
D)select数学>(selectavg(数学)from sc)
解析:由题目中的图片可以得出:查询的条件是“数学成绩大于数学平均分”,需要显示的字段是“学号”和“数学”,SQL语句中也应包含这些数据。
2.创建一个交叉表查询,在“交叉表”行上有且只能有一个的是
A)行标题和列标题B)列标题和值
C)行标题和值D)行标题、列标题和值
3.若以已建立的“tEmployee”表为数据源,计算每个职工的年龄(取整),那么正确的计算公式为:
A)Date()-[出生日期]/365B)(Date()-[出生日期])/365
正确的设计是——。(2006年9月)
第一部分
一、Байду номын сангаас择题
1.在Access数据库中已建立了“tBook”表,若查找“图书编号”是“112266”和“113388”的记录,应在查询“设计”视图的“条件”行中输入
A) "112266" And "113388" B) Not In("112266","113388")
C) In("112266","113388")D) Not("112266","113388")
>=Date()-20 and <=Date()
第二部分
一、选择题
1.将表A的记录复制到表B中,且不删除表B中的记录,可以使用的查询是。(2005年4月)
A)删除查询 B)生成表查询C)追加查询D)交叉表查询
解析:删除查询是用于删除表中同一类的一组记录。生成表查询是从多个表中提取数据组合起来生成一个新表永久保存。追加查询是将某个表中符合一定条件的记录添加到另一个表上。交叉表查询是将来源于某个表中的字段进行分组,一组列在数据表的左侧,一组到在数据表的上部,然后在数据表行与列的交叉处显示表中某个字段的各种计算值。因此,要将表A的记录复制到表B中,且不删除表B中的记录,可以使用追加查询。
C)Year(date())-Year([出生日期])D)Year([出生日期])/365
4.将表A中的记录添加到表B中,要求保持表B中原有的记录,可以使用的查询是
A)追加查询B)生成表查询 C)联合查询 D)传递查询
5.在Access的“学生”表中有“学号”、“姓名”、“性别”和“入学成绩”字段。有以下SELECT语句:
8.如果表中有一个“姓名”字段,查找姓“王”的记录条件是
A)Not"王*" B)Like"王"C)Like"王*"D)"王"
9.在查询中要统计记录的个数,应使用的函数是
A)SUM B)COUNT(列名)C)COUNT(*)D)AVG
二、填空题
1.操作查询共有4种类型,分别是删除查询、更新查询、追加查询和生成表查询。
相关文档
最新文档