SQLyog基本操作(四)-創建數據庫、表、添加數據、指定字段查詢


4 DQL查詢數據(最重點)

4.1 DQL(Data Query Language:數據查詢語言)

  • 所有的查詢操作都用它 select

  • 簡單的查詢、復雜的查詢它都能做

  • 數據庫最核心的語言、最重要的語句

  • 使用頻率最高的語句

新建數據庫、表、添加數據

 -- 創建一個school數據庫
 CREATE DATABASE IF NOT EXISTS `school`;
 -- 使用school數據庫
 USE `school`;
 
 -- 創建年級表grade
 DROP TABLE IF EXISTS `grade`;
 CREATE TABLE `grade`(
   `gradeID` INT(11) NOT NULL AUTO_INCREMENT COMMENT '年級編號',
   `gradeName` VARCHAR(50) NOT NULL COMMENT '年級名稱',
   PRIMARY KEY (`gradeID`)
 ) ENGINE=INNODB AUTO_INCREMENT = 6 DEFAULT CHARSET = utf8;
 
 -- 插入grade表數據
 INSERT INTO `grade`(`gradeID`,`gradeName`)
 VALUES (1,'大一'),(2,'大二'),(3,'大三'),(4,'大四'),(5,'預科班');
 
 -- 創建成績表result
 DROP TABLE IF EXISTS `result`;
 CREATE TABLE `result`(
   `StudentNo` INT(4) NOT NULL COMMENT '學號',
   `SubjectNo` INT(4) NOT NULL COMMENT '課程編號',
   `ExamDate` DATETIME NOT NULL COMMENT '考試日期',
   `StudentResult` INT (4) NOT NULL COMMENT '考試成績',
   KEY `SubjectNo` (`SubjectNo`)
 )ENGINE = INNODB DEFAULT CHARSET = utf8;
 
 -- 插入result表數據
 INSERT INTO `result` (`studentNo`, `subjectNo`, `ExamDate`, `studentResult`)
 VALUES('10000','1','2016-02-15 00:00:00','71'),
 ('10000','2','2016-02-17 00:00:00','60'),
 ('10001','3','2016-02-17 00:00:00','46'),
 ('10002','4','2016-02-17 00:00:00','83'),
 ('10003','5','2016-02-17 00:00:00','60'),
 ('10004','6','2016-02-17 00:00:00','60'),
 ('10005','7','2016-02-17 00:00:00','95'),
 ('10006','8','2016-02-17 00:00:00','93'),
 ('10007','9','2016-02-17 00:00:00','23');
 
 -- 創建學生表student
 DROP TABLE IF EXISTS `student`;
 CREATE TABLE `student`(
   `StudentNo` INT(4) NOT NULL COMMENT '學號',
   `LoginPwd` VARCHAR(20) DEFAULT NULL,
   `StudentName` VARCHAR(20) DEFAULT NULL COMMENT '學生姓名',
   `Sex` TINYINT(1) DEFAULT NULL COMMENT '性別,取值0或1',
   `GradeID` INT(11) DEFAULT NULL COMMENT '年級編號',
   `Phone` VARCHAR(50) NOT NULL COMMENT '聯系電話,允許為空,即可選輸入',
   `Address` VARCHAR(255) NOT NULL COMMENT '地址,允許為空,即可選輸入',
   `BornDate` DATETIME DEFAULT NULL COMMENT '出生時間',
   `Email` VARCHAR (50) NOT NULL COMMENT '郵箱賬號,允許為空,即可選輸入',
   `IdentityCard` VARCHAR(18) DEFAULT NULL COMMENT '身份證號',
   PRIMARY KEY (`StudentNo`),
   UNIQUE KEY `IdentityCard`(`IdentityCard`),
   KEY `Email` (`Email`)
 )ENGINE=MYISAM DEFAULT CHARSET=utf8;
 
 -- 插入student表數據
 INSERT INTO `student`(`StudentNo`,`LoginPwd`,`StudentName`,`Sex`,`GradeID`,`Phone`,`Address`,`BornDate`,`Email`,`IdentityCard`)
 VALUES('10000','123','郭靖','0','1','13645667783','天津市河西區','1990-09-08 00:00:00','0@qq.com',NULL),
 ('10001','123','李文才','0','1','13645667890','地址不詳','1994-04-12 00:00:00','1@qq.com',NULL)
('10002','123','李斯文','0','1','13645556793','河南洛陽','1993-07-23 00:00:00','2@qq.com',NULL)
('10003','123','張萍','1','1','13642345112','地址不詳','1995-06-10 00:00:00','3@qq.com',NULL)
('10004','123','韓秋潔','1','1','13812344566','北京市海淀區','1995-07-15 00:00:00','4@qq.com',NULL)
('10005','123','張秋麗','1','1','13567893246','北京市東城區','1994-01-17 00:00:00','5@qq.com',NULL)
('10006','123','肖梅','1','1','13563456721','河北省石家庄市','1991-02-17 00:00:00','6@qq.com',NULL)
('10007','123','秦洋','0','1','13056434411','上海市盧灣區','1992-04-18 00:00:00','7@qq.com',NULL)
('10008','123','何睛睛','1','1','13053445221','廣州市天河區','1997-07-23 00:00:00','8@qq.com',NULL)
('20000','123','王寶寶','0','2','15076552323','地址不詳','1996-06-05 00:00:00','9@qq.com',NULL)
('20010','123','何小華','1','2','13318877954','地址不詳','1995-09-10 00:00:00','10@qq.com',NULL)
('30011','123','陳志強','0','3','13689965430','地址不詳','1994-09-27 00:00:00','11@qq.com',NULL)
('30012','123','李露露','1','3','13685678854','地址不詳','1992-09-27 00:00:00','12@qq.com',NULL)
​ 
-- 創建科目表subject 
DROP TABLE IF EXISTS `subject`
CREATE TABLE `subject`
 `SubjectNo`INT(11) NOT NULL AUTO_INCREMENT COMMENT '課程編號'
 `SubjectName` VARCHAR(50) DEFAULT NULL COMMENT '課程名稱'
 `ClassHour` INT(4) DEFAULT NULL COMMENT '學時'
 `GradeID` INT(4) DEFAULT NULL COMMENT '年級編號'
PRIMARY KEY (`SubjectNo`
)ENGINE = INNODB AUTO_INCREMENT = 18 DEFAULT CHARSET = utf8
​ 
-- 插入subject表數據 
INSERT INTO `subject`(`SubjectNo`,`SubjectName`,`ClassHour`,`GradeID`)  
VALUES (1,'高等數學-1',110,1)
(2,'高等數學-2',110,2)
(3,'高等數學-3',100,3)
(4,'高等數學-4',130,4)
(5,'C語言-1',110,1)
(6,'C語言-2',110,2)
(7,'C語言-3',100,3)
(8,'C語言-4',130,4)
(9,'Java程序設計-1',110,1)
(10,'Java程序設計-2',110,2)
(11,'Java程序設計-3',100,3)
(12,'Java程序設計-4',130,4)
(13,'數據庫結構-1',110,1)
(14,'數據庫結構-2',110,2)
(15,'數據庫結構-3',100,3)
(16,'數據庫結構-4',130,4)
(17,'C#基礎',130,1);

創建效果如下:

grade

result

student

subject

 

4.2 指定查詢字段

4.2.1 查詢 select

 -- 查詢所有字段:SELECT * FROM 表名
 -- 查詢全部的學生 *表示所有
 SELECT * FROM student

輸出結果:

 -- 查詢指定字段:SELECT 字段名 FROM 表名 
 SELECT `StudentNo`,`StudentName` FROM student

輸出結果:

 -- 別名:給結果起一個名字 AS:可以給字段起別名,也可以給表起別名
 -- 給字段起別名
 SELECT `StudentNo` AS 學號,`StudentName` AS 學生姓名 FROM student
 -- 給表起別名:在多個表同名的情況下使用
 SELECT `StudentNo` AS 學號,`StudentName` AS 學生姓名 FROM student AS s

輸出結果:

 -- 函數 CONCAT(a,b) 拼接字符串
 SELECT CONCAT('姓名:',StudentName) AS 新名字 FROM student

輸出結果:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM