MySQL 基礎 (一)查詢語句
導入示例數據庫
1.教程 https://www.yiibai.com/mysql/how-to-load-sample-database-into-mysql-database-server.html
SQL 是什麼?MySQL 是什麼?
1.結構化查詢語言SQL(STRUCTURED QUERY LANGUAGE)是最重要的關係數據庫操作語言,並且它的影響已經超出數據庫領域,得到其他領域的重視和採用,如人工智能領域的數據檢索,第四代軟件開發工具中嵌入SQL的語言等
2.MySQL是一個關係型數據庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 是最流行的關係型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關係數據庫管理系統) 應用軟件
- 查詢語句 SELECT FROM
- -語句解釋
1.去重語句
2.前 N 個語句 - 篩選語句 WHERE
語句解釋
運算符 - 分組語句 GROUP BY
語句解釋
HAVING 子句 - 排序語句 ORDER BY
- 語句解釋
正序、逆序
SQL 註釋
SQL 代碼規範 - [SQL 編程格式的優化建議] https://zhuanlan.zhihu.com/p/27466166
- [SQL Style Guide]https://www.sqlstyle.guide/
項目一:查找重複的電子郵箱(難度:簡單)
1.創建 email 表,並插入如下三行數據:
CREATE TABLE Email ( id INT NOT NULL PRIMARY KEY, Email VARCHAR ( 20 ) NOT NULL );
2.插入三條數據:
INSERT INTO Email VALUES(‘1’,‘[email protected]’);
INSERT INTO Email VALUES(‘2’,‘[email protected]’);
INSERT INTO Email VALUES(‘3’,‘[email protected]’);
INSERT INTO Email VALUES(‘4’,‘[email protected]’);
INSERT INTO Email VALUES(‘5’,‘[email protected]’);
INSERT INTO Email VALUES(‘6’,‘[email protected]’);
INSERT INTO Email VALUES(‘7’,‘[email protected]’);
3.編寫一個 SQL 查詢,查找 email 表中所有重複的電子郵箱。
根據以上輸入你的查詢應返回以下結果:
去重複:
select distinct Email from Email;
項目二:查找大國
1.創建如下 World 表:
CREATE TABLE WORLD(
name VARCHAR(20) NOT NULL,
continent VARCHAR(20) NOT NULL,
area INT NOT NULL,
population INT NOT NULL,
gdp INT NOT NULL
);
2.插入數據:
INSERT INTO World
VALUES('Afghanistan','Asia',652230,25500100,20343000);
INSERT INTO World
VALUES('Albania','Europe',28748,2831741,12960000);
INSERT INTO World
VALUES('Algeria','Africa',2381741,37100000,188681000);
INSERT INTO World
VALUES('Andorra','Europe',468,78115,3712000);
INSERT INTO World
VALUES('Angola','Africa',1246700,20609294,100990000);
3.如果一個國家的面積超過 300 萬平方公里,或者(人口超過 2500 萬並且 gdp 超過 2000 萬),那麼這個國家就是大國家。
編寫一個 SQL 查詢,輸出表中所有大國家的名稱、人口和麪積
SELECT name
,
population,
area
FROM
world
WHERE
area > 3000000
OR population > 25000000
AND gdp > 20000000