1.DQL語言(精通):
- 幾個資料庫語言中的最核心的語言,
- 資料庫中所有簡單的查詢、復雜的查詢都是用DQL,
- 使用頻率極高,
2.實作程序:
2.1簡單查詢語法:
- 查詢表的全部內容:
- SELECT * FROM
表名;- 查詢表中指定欄位內容(未設定別稱):
- SELECT
欄位1名稱,...,欄位n名稱FROM表名;- 查詢表中指定欄位內容(設定別稱):
- 有時候我們欄位名稱起的不是那么容易看懂,那么我們查詢出來可能會造成閱讀困難,所以此時我們可以使用 AS 關鍵字來給欄位名起一個別稱,方便閱讀結果,
- SELECT
欄位1名稱AS別稱,...,欄位n名稱AS別稱FROM表名AS別稱;- 運用concat(a,b)資料庫字串拼接函式來融合查詢指定欄位(設定別稱),
- SELECT CONCAT(‘拼接內容’,
欄位1名稱) AS別稱,..., CONCAT(‘拼接內容’,欄位n名稱) AS別稱FROM表名AS別稱;
CREATE DATABASE IF NOT EXISTS `school`;
USE `school`;
-- 年級表創建以及資料插入
DROP TABLE IF EXISTS `grade`;
CREATE TABLE `grade`(
`grade_id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '年級編號',
`grade_name` VARCHAR(20) NOT NULL COMMENT '年級名稱',
PRIMARY KEY (`grade_id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8;
INSERT INTO `grade` (`grade_id`,`grade_name`)
VALUES (1,'大一'),(2,'大二'),(3,'大三'),(4,'大四'),(5,'研究生');
-- 學生表創建以及資料插入
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`(
`student_no` INT(4) NOT NULL COMMENT '學生學號',
`login_pwd` VARCHAR(20) DEFAULT NULL COMMENT '登陸密碼',
`student_name` VARCHAR(20) DEFAULT NULL COMMENT '學生姓名',
`sex` TINYINT(1) DEFAULT NULL COMMENT '性別,0或1',
`grade_id` INT(11) DEFAULT NULL COMMENT '年級編號',
`tel` VARCHAR(50) DEFAULT NULL COMMENT '聯系電話',
`address` VARCHAR(255) DEFAULT NULL COMMENT '地址',
`birthday` DATETIME DEFAULT NULL COMMENT '生日',
`email` VARCHAR(50) DEFAULT NULL COMMENT '郵箱賬號',
`ID_number` VARCHAR(18) DEFAULT NULL COMMENT '身份證號碼',
PRIMARY KEY (`student_no`),
UNIQUE KEY `ID_number`(`ID_number`),
KEY `email`(`email`)
)ENGINE=MYISAM DEFAULT CHARSET=utf8;
INSERT INTO `student` (`student_no`,`login_pwd`,`student_name`,`sex`,
`grade_id`,`tel`,`address`,`birthday`,`email`,`ID_number`)
VALUES(1000,'123456','張三',0,2,'18888888888','火星','1900-1-1','text1@qq.com','123456789012345678'),
(1001,'123456','李四',1,3,'19999999999','水星','1901-1-1','text2@qq.com','098765432109876543');
-- 科目表創建以及資料插入
DROP TABLE IF EXISTS `subject`;
CREATE TABLE `subject`(
`subject_no` INT(11) NOT NULL AUTO_INCREMENT COMMENT '課程編號',
`subject_name` VARCHAR(50) DEFAULT NULL COMMENT '課程名稱',
`period` INT(4) DEFAULT NULL COMMENT '學時',
`grade_id` INT(4) DEFAULT NULL COMMENT '年級編號',
PRIMARY KEY (`subject_no`)
)ENGINE=INNODB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8;
INSERT INTO `subject`(`subject_no`,`subject_name`,`period`,`grade_id`)
VALUES(1,'高等數學',64,1),
(2,'C語言基礎',64,1),
(3,'C++程式設計',64,1),
(4,'Java程式設計',64,1),
(5,'資料結構',64,1);
-- 成績表創建以及資料插入
DROP TABLE IF EXISTS `result`;
CREATE TABLE `result`(
`student_no` INT(4) NOT NULL COMMENT '學生學號',
`subject_no` INT(11) NOT NULL COMMENT '課程編號',
`exam_date` DATETIME NOT NULL COMMENT '考試時間',
`student_result` INT(4) NOT NULL COMMENT '考試成績',
KEY `subject_no`(`subject_no`)
)ENGINE=INNODB DEFAULT CHARSET=utf8;
INSERT INTO `result`(`student_no`,`subject_no`,`exam_date`,`student_result`)
VALUES(1000,1,'2021-01-01 00:00:00',85),
(1000,2,'2021-01-01 00:00:00',86),
(1000,3,'2021-01-01 00:00:00',87),
(1000,4,'2021-01-01 00:00:00',88),
(1000,5,'2021-01-01 00:00:00',89);
-- 簡單查詢程序:
-- 查尋表全部內容,
SELECT * FROM `student`;
-- 查詢指定欄位(沒有設定別稱),
SELECT `student_no`,`student_name` FROM `student`;
-- 查詢指定欄位(設定別稱),
SELECT `student_no` AS 學號,`student_name` AS 學生姓名 FROM `student`;
-- 運用concat(a,b)資料庫字串拼接函式來融合查詢指定欄位(設定別稱),
SELECT CONCAT('學號:',`student_no`) AS `學號`,CONCAT('姓名:',`student_name`) AS 學生姓名 FROM `student`;
2021.1.13
本文章是本人學習筆記,不進行任何商用所以不支持轉載請理解,也請別拿去商用!
如果覺得對你有幫助那么歡迎你隨時來回顧!
只為記錄本人學習歷程,
畢
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/248501.html
標籤:其他
