赞
踩
宝子们!我们首先要了解SELECT语句的一般格式:
SELECT[ALL|DISTINCT]<目标表达式>[,<目标表达式>]... //DISTINCT:消除重复值
FROM<表名或视图名>[,<表名或视图名>...](<SELECT语句>)[AS]<别名>
WHERE<条件表达式>
[GROUP BY<列名1>[HAVING <条件表达式>]]
[ORDER BY<列名2>[ASC|DESC]]; //ASC:升序、DESC:降序
[ LIMIT [OFFSET],记录数]
具体怎么用?Look here!
一、在stu数据库中完成下列操作
1.查询student表中的学生学号,姓名,家庭住址三个字段信息
SELECT sid,sname,addr
FROM student;
2.查询输出score表中的所有选修过课程的学生学号(不得重复)
SELECT DISTINCT sid
FROM score
3.查询输出student表中姓名,年龄(年龄=系统年份-出生年份)
SELECT sname,2022-birth
FROM student;
SELECT DATE_FORMAT(NOW(), '%Y') - DATE_FORMAT(birth, '%Y') - (DATE_FORMAT(NOW(), '00-%m-%d')
< DATE_FORMAT(birth, '00-%m-%d')) AS age FROM student;
4.显示学号、姓名、填表日期,其中日期为当前日期
SELECT sid,sname,DATE_FORMAT(NOW(),'%Y-%m-%d')
FROM student;
5.查询01号课程成绩在80-90分之间的成绩信息
SELECT result
WHERE cid=01 AND result BETWEEN 80 AND 90
FROM score;
6.日期比较:查询‘2000-9-01’以后出生的学生信息
SELECT * FROM student
WHERE DATE_FORMAT(birth,'%Y-%m-%d')>'2000-9-01';
7.查询“信息工程系”和“化学工程系”的学生的基本信息
SELECT * FROM student
WHERE department='信息工程系'OR department='化学工程系';
8.查询“信息工程系”和“化学工程系”的女生的基本信息
SELECT * FROM student
WHERE sex='女' AND department='信息工程系' OR sex='女' AND department='化学工程系';
9.查询所有学生的总分,平均分,最高分和最低分
SELECT result
WHERE
FROM student;
二、在stu数据库中完成下列操作
1.查询student表中的学生学号,姓名,家庭住址三个字段信息
SELECT sid,sname,addr
FROM student;
2.查询输出score表中的所有选修过课程的学生学号(不得重复)
SELECT DISTINCT sid
FROM score
3.查询输出student表中姓名,年龄(年龄=系统年份-出生年份)
SELECT sname,TIMESTAMPDIFF(YEAR,birth, CURDATE())年龄
FROM student
4.显示学号、姓名、填表日期,其中日期为当前日期
SELECT sid,sname,DATE_FORMAT(NOW(),'%Y-%m-%d')
FROM student;
5.查询01号课程成绩在80-90分之间的成绩信息
SELECT result
WHERE cid=01 AND result BETWEEN 80 AND 90
FROM score;
6.日期比较:查询‘2000-9-01’以后出生的学生信息
SELECT * FROM student
WHERE DATE_FORMAT(birth,'%Y-%m-%d')>'2000-9-01';
7.查询“信息工程系”和“化学工程系”的学生的基本信息
SELECT * FROM student
WHERE department='信息工程系'OR department='化学工程系';
8.查询“信息工程系”和“化学工程系”的女生的基本信息
SELECT * FROM student
WHERE sex='女' AND department='信息工程系' OR sex='女' AND department='化学工程系';
9.查询所有学生的总分,平均分,最高分和最低分
SELECT result
WHERE
FROM student;
10.查询“02”科目的总分,平均分,最高分和最低分
SELECT SUM(result),AVG(result),MAX(result),MIN(result)
FROM score
WHERE cno=02;
11.查询学号为“0101”的总分,平均分,最高分和最低分
SELECT SUM(result),AVG(result),MAX(result),MIN(result)
FROM score
WHERE sid=0101;
12.查询输出每个学生的学号、姓名、所在系,按所在系升序排列
SELECT sid,sname,department
FROM student
ORDER BY department ASC;
13.查询所有学生的姓名和年龄,以列名 “姓名、年龄”输出,并按照年龄从小到大输出
SELECT sname,TIMESTAMPDIFF(YEAR,birth, CURDATE())AS 年龄
FROM student
ORDER BY TIMESTAMPDIFF(YEAR,birth, CURDATE()) ASC;
14.查询所有学生的学号,姓名和性别,并按性别升序,姓名降序排序。
SELECT sid,sname,sex
FROM student
ORDER BY sex ASC,sname DESC;
15.查询出score表中选修“03”课程的学号和成绩,并按照成绩的降序排列
SELECT sid,result
FROM score
WHERE cno=03
ORDER BY result DESC;
16.查询student表中的学生人数
SELECT COUNT(*)
FROM student;
17.按性别统计男女生人数
SELECT sex,COUNT(sex)
FROM student
GROUP BY sex;
18查询统计系部人数,显示各系人数在3人以上的系部名称和人数
SELECT department,COUNT(department)
FROM student
GROUP BY department HAVING COUNT(department)>3;
19.统计每门课的总分,平均分,最高分和最低分
SELECT cno,SUM(result)总分,AVG(result)平均分,MAX(result)最高分,MIN(result)最低分
FROM score
GROUP BY cno;
20.统计"01"、"02"、"03"三科成绩的平均分、最高分、最低分
SELECT cno,AVG(result)平均分,MAX(result)最高分,MIN(result)最低分
FROM score
GROUP BY cno HAVING cno=01 OR cno=02 OR cno=03;
21.查询课程平均分在80分以上的课程的总分,平均分
SELECT cno,AVG(result)平均分
FROM score
GROUP BY cno HAVING AVG(result)>80;
22.统计每个学生的总分,平均分,最高分和最低分
SELECT SUM(result)总分,AVG(result)平均分,MAX(result)最高分,MIN(result)最低分
FROM score
GROUP BY sid;
23.查询出"03"成绩前3名的成绩信息
SELECT cno,result
FROM score
WHERE cno=03
ORDER BY result DESC
LIMIT 0,3;
24.查询出‘02’号课程第2、3名成绩信息
SELECT cno,result
FROM score
WHERE cno=02
ORDER BY result DESC
LIMIT 1,2;
25.查询出score表中总成绩前三名的学生学号,总分
SELECT sid,SUM(result)
FROM score
GROUP BY sid
ORDER BY SUM(result) DESC
LIMIT 0,3;
26.查询出score表中总成绩最低名的学生学号,总分
SELECT sid,SUM(result)
FROM score
GROUP BY sid
ORDER BY SUM(result) ASC
LIMIT 0,1;
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。