mysql数据库实验3查询_MySQL数据库实验:任务三 数据库的单表查询设计
任務三 數據庫的單表查詢設計
文章目錄任務三 數據庫的單表查詢設計【實訓目的與要求】【實訓原理】【實訓步驟】一、簡單查詢二、按條件查詢1.比較大小查詢2.帶in關鍵字的查詢(確定集合)3.帶BETWEEN AND關鍵字的查詢(確定范圍)4.空值查詢5.帶LIKE關鍵字的查詢(字符匹配)6.帶AND關鍵字的查詢(多重條件查詢)7.帶OR關鍵字的查詢(多重條件查詢)三、高級查詢1.聚集函數2.分組查詢3.使用LIMIT限制查詢結果的數量4.對查詢結果排序【實訓總結】
【實訓目的與要求】
1、 掌握簡單查詢,會使用SELECT語句查詢所有字段和指定的字段;
2、 掌握條件查詢,會使用運算符以及不同的關鍵字進行查詢;
3、 掌握高級查詢,會使用聚合函數查詢、分組查詢等;
4、 學會為表和字段起別名。
【實訓原理】
MySQL單表查詢。
【實訓步驟】
參考任務二中提供的表數據內容,利用SELECT命令查詢數據庫表中的數據。參考教材《數據庫系統概論》P89-115的例題,以及《MySQL數據庫入門》第4章內容。
一、簡單查詢
(選擇表中若干列,給表或字段起別名)
操作student表
(1)功能:指定查詢學號和姓名列
命令:
select SNo,SName from student;
截圖:
(2)功能:給SNo、SName、SBir起別名為id、Name和Birthday
命令:
select SNo id,SName Name,SBir Birthday
from student;
截圖:
二、按條件查詢
1.比較大小查詢
(1)功能:查詢student表中id為16044905的學生姓名
命令:
select SNo,SName
from student
where SNo="16044905";
截圖:
(2)功能:查詢Scredits學分大于等于10的學號SNo和姓名SName
命令:
select SNo,SName,Scredits
from student
where Scredits>=10;
截圖:
2.帶in關鍵字的查詢(確定集合)
(1)功能:查詢student表中學號為16041101,16041102,16041103的一些信息
命令:
select SNo,SName,SSex,Scredits
from student
where SNo IN("16041101","16041102","16041103");
截圖:
(2)功能:查詢sc表中CNo為00001,00008,00009的信息
命令:
select *
from sc
where CNo IN("00001","00008","00009");
截圖:
3.帶BETWEEN AND關鍵字的查詢(確定范圍)
(1)功能:查詢course表中CTerm值在1~3之間的課程名和課程號信息
命令:
select CNo,CName
from course
where CTerm BETWEEN 1 AND 3;
截圖:
(2)功能:查詢sc表中成績在80.0到100.0之間的信息
命令:
select *
from sc
where Score BETWEEN 80.0 AND 100.0;
截圖:
4.空值查詢
(1)功能:查詢student表中Scredits為空值的信息
命令:
SELECT *
FROM student
WHERE Scredits IS NULL;
截圖:
(2)功能:查詢sc表中成績不為空的SNo和CNo
命令:
SELECT SNo,CNo
FROM sc
WHERE Score IS NOT NULL;
截圖:
5.帶LIKE關鍵字的查詢(字符匹配)
(1)功能:查詢student表中姓名字段值姓“洪”的學生的學號,姓名和學分信息
命令:
SELECT SNo,SName,Scredits
FROM student
WHERE SName LIKE "洪%";
截圖:
(2)功能:查詢student表中的女生信息
命令:
SELECT *
FROM student
WHERE SSex LIKE "女";
截圖:
6.帶AND關鍵字的查詢(多重條件查詢)
(1)功能:查詢student表中性別為女且學分大于等于7的學號,姓名,性別以及學分
命令:
SELECT SNo,SName,SSex,Scredits
FROM student
WHERE SSex="女" AND Scredits<=7;
截圖:
(2)功能:查詢sc表中課程號為00005和00008以及分數在70分以上的學生信息
命令:
SELECT *
FROM sc
WHERE CNo IN("00005","00008") AND Score>70;
截圖:
7.帶OR關鍵字的查詢(多重條件查詢)
(1)功能:查詢student表中姓名字段以“洪”開頭或者性別為男生的學生信息
命令:
SELECT *
FROM student
WHERE SName LIKE "洪%" OR SSex="男";
截圖:
(2)功能:查詢course表中課時在54學時以上以及CTerm在2~5之間的學生學號,姓名,學時和學期
命令:
SELECT CNo,CName,CTime,CTerm
FROM course
WHERE CTime>54 OR CTerm>2 AND CTerm<5;
截圖:
三、高級查詢
1.聚集函數
(1)功能:查詢sc表中Score字段的平均分數
命令:
SELECT AVG(Score)
FROM sc;
截圖:
(2)功能:查詢course表中課時數最多的數量
命令:
SELECT MAX(CTime)
FROM course;
截圖:
2.分組查詢
(1)功能:將student表按Scredits字段分組
命令:
SELECT *
FROM student
GROUP BY Scredits;
截圖:
(2)功能:將course表按照CTime分組,查詢出CCredits字段值之和小于100的分組
命令:
SELECT SUM(CCredits),CTerm
FROM course
GROUP BY CTime
HAVING SUM(CCredits)<100;
截圖:
3.使用LIMIT限制查詢結果的數量
(1)功能:查詢sc表前四條記錄
命令:
SELECT *
FROM sc LIMIT 4;
截圖:
(2)功能:查詢course表中CTerm字段從第3位到第5位的學生(從高到低)
命令:
SELECT *
FROM course
ORDER BY CTerm DESC LIMIT 2,3;
截圖:
4.對查詢結果排序
(1)功能:將course表中的CTerm按照降序排序
命令:
SELECT *
FROM course
ORDER BY CTerm DESC;
截圖:
(2)功能:對sc表的Score進行升序排序
命令:
SELECT *
FROM sc
ORDER BY Score ASC;
截圖:
【實訓總結】
1.簡單查詢
2.按條件查詢
3.高級查詢
總結
以上是生活随笔為你收集整理的mysql数据库实验3查询_MySQL数据库实验:任务三 数据库的单表查询设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html可以导入MySQL吗_将数据从H
- 下一篇: redis重启会清除数据吗_从零开始手写