数据库查询语句select,数据库中select...from...where...各表示什么意思
今天给各位分享数据库查询语句select的知识,其中也会对数据库中select...from...where...各表示什么意思进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
数据库中select...from...where...各表示什么意思
关于数据库中select...from....where....表示的意思分别如下:
select的后面表示筛选的内容,from的后面表示筛选内容来自的位置,where的后面表示筛选的条件。
例如:SELECT* FROM T WHERE C1如'wiki%raid',此操作语言的返回结果为wiki10或wikipedia100。
SELECT语句内部各组成部百分的理论计算顺序如下:
1、FROM的表连接;
2、WHERE子句过滤出符合条件的行集;
3、GROUP BY子句对行集中的行进行分组和合并,以便多行对应于结果集中的一行;
4、使用HAVING子句从中间结果中筛选出满足条件的行集。
扩展资料:
数据操作语言是完成数据操作的命令,通常分为两种类型的数据操作。
1、数据检索问题(通常称为查询):查找所需的特定数据。
2、数据修改:插入,删除和更新数据。
数据操作语言通常由INSERT(插入),DELETE(删除),UPDATE(更新),SELECT(检索,也称为查询)等组成。由于SELECT通常被使用,因此通常称为查询(检索))的语言和答案分开显示。
数据库SQL查询语句的编写
13.查询电话号码以4或7或8结尾的学生的学号,姓名,性别,年龄,电话,需按电话(倒序)排序。
select snum,sname,ssex,ssage,Sphone from学生 where sphone like'%4' or sphone like'%7' or sphone like'%8'
ORDER BY Sphone DESC
14.查询数学系姓刘的学生所有信息(包含所有列)。
SELECT*
FROM sys.tables
where Sname like'刘%' and dname='数学系'
15.查询年龄在20与23(含20,23)之间的男学生姓名,课程名及其平均成绩。
select sname,cname,avg(SCORE) from学生,课程,选课 where Ssage between 20 and 23 and Ssex='男'
16.从学生表和选课表2个表中,查询选修表所有的学生学号,姓名、所修课程号及成绩。
select选课.Snum,sname,cnum,score
from选课 LEFT OUTER join学生
on选课.Snum=学生.Snum
17.从学生表和选课表2个表中,查询所有学生(学生表所有的学生)姓名、学生性别,所修课程名及成绩,按课程,成绩(倒序)排列。
select sname,Ssex,cnum,score
from学生 LEFT OUTER join选课
on学生.Snum=选课.Snum
ORDER BY score DESC
18.查询每个老师姓名,其所教课程,及该门课程名的平均成绩,最小成绩,最大成绩。
SELECT Tname, Cname,,AVG(score),max(score),min(score)
FROM教师,课程,选课
19.查询所教课程成绩平均成绩低于80分的老师号,姓名,其所教课程号,课程名,及该门课程的平均成绩。
select Tnum,Tname,CNUM,CNMAE,AVG(score)
from授课,教师,课程,选课
group by Tnum
having AVG(score)<80
20.查询所有学生的学号,姓名、性别,课程号,所修课程及成绩(可能没有选修课程)。
SELECT学生.Snum,学生.Sname,SSEX,课程.Cnum,课程.Cname,选课.Score
FROM课程 INNER JOIN
选课 ON课程.Cnum=选课.Cnum INNER JOIN
学生 ON选课.Snum=学生.Snum
21.按照性别统计学生性别,最大岁数,最小岁数,平均岁数。
select ssex,MAX(ssage),MIN(ssage),AVG(ssage) from学生
group by SSEX
数据库SQ习题
最佳答案:
习题
一、选择题
1.关于查询语句中ORDER BY子句使用正确的是( D)。
A.如果未指定排序字段,则默认按递增排序
B.表的字段都可用于排序
C.如果在SELECT子句中使用了DISTINCT关键字,则排序字段必须出现在查询结果中
D.联合查询不允许使用ORDER BY子句
第2~4题使用7.7节“示例分析”中数据表。
2.使用查询语句:
SELECT STUDENT.学号,STUDENT.姓名,SUM(分数)
FROM STUDENT,GRADE
WHERE STUDENT.学号=GRADE.学号
GROUP BY STUDENT.学号,STUDENT.姓名
查询结果是(A)。
A.按学号分类的每个学生所有课程成绩的总分 B.按学号分类的每个学生各课程成绩
C.全体学生的按各课程分类的成绩总分 D.所有学生所有课程成绩总分
3.使用查询语句:
SELECT MAX(分数) AS最高分
FROM STUDENT,curriculum,GRADE
WHERE STUDENT.学号=GRADE.学号
AND curriculum.课程编号=GRADE.课程编号
AND课程名称='数据库技术及应用'
查询的结果是()。
A.87 B.91 C.82 D.90
很遗憾!不知道表中的记录数据,无法判断是哪个选项,但是题意是检索出:选修课程'数据库技术及应用'的学生中成绩最高的。看一下表就知道了。
4.查询选修了课程编号为“0002”的学生的学号和姓名,以下( A)语句是错误的。
A.
SELECT学号,姓名FROM STUDENT
WHERE学号=(SELECT学号FROM GRADE WHERE课程编号='0002')
B.
SELECT STUDENT.学号,STUDENT.姓名
FROM STUDENT,GRADE
WHERE STUDENT.学号=GRADE.学号AND课程编号='0002'
C.
SELECT STUDENT.学号,STUDENT.姓名
FROM STUDENT JOIN GRADE ON STUDENT.学号=GRADE.学号
WHERE GRADE.课程编号='0002'
D.
SELECT学号,姓名FROM STUDENT
WHERE学号IN(SELECT学号FROM GRADE WHERE课程编号='0002')
5.下列关于查询结果错误的是( D)。
A.查询结果可以显示在表格中
B.查询结果可以按文本方式显示
C.以文本和表格显示的查询结果在保存时,其文件格式不同
D.不管以哪种方式查看,查询结果都会显示在查询结果窗口中
6.在T-SQL语句中,与表达式“仓库号NOT IN('wh1','wh2')”功能相同的表达式是( D)。
A.仓库号='wh1' AND仓库号='wh2' B.仓库号!='wh1' OR仓库号#'wh2'
C.仓库号<>'wh1' OR仓库号!='wh2' D.仓库号!='wh1' AND仓库号!='wh2'
7.在T-SQL的SELECT语句中用于实现关系的选择运算的短语是( C)。
A.FOR B.WHILE C.WHERE D.CONDITION
8.使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当( B)。
A.使用WHERE子句 B.在GROUP BY后面使用HAVING子句
C.先使用WHERE子句,再使用HAVING子句 D.先使用HAVING子句,再使用WHERE子句
二、填空题
1.在查询语句中,应在__SELECT____子句中指定输出字段。
2.如果要使用SELECT语句返回指定条数的记录,则应使用_TOP__关键字来限定输出字段。
3.当一个子SELECT的结果作为查询的条件,即在一个SELECT命令的WHERE子句中出现另一个SELECT命令,这种查询称为__嵌套____查询。
4.连接查询可分为3种类型:_内连接___、__外连接__和交叉连接。
5.若要把查询结果存放到一个新建的表中,可使用__into tabale或into dbf____子句。
三、判断题
1.在关系数据库SQL Server中,用于检索数据的语句是T-SQL的定义语言。(×)
2.逻辑运算符(AND、NOT、OR)的运算顺序是AND→OR→NOT。(×)
3.用于WHERE子句的查询条件表达式可用的比较运算符为:=(等于)、!=或<>(不等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)。(√)
4.SELECT语句的DISTINCT参数表示输出无重复结果的记录。(√)
5.如果要使SELECT的查询结果有序输出,需要用GROUP BY子句配合。(×)
OK,本文到此结束,希望对大家有所帮助。