心智圖資源庫 MySQL_02基本的SELECT語句
該思維導圖幫助學習者掌握SQL的基礎知識,包括分類、基本規則、大小寫規範及如何使用SELECT語句進行基本的數據查詢。 🔥 SQL奇妙探險,開啟數據魔法! 🔥
編輯於2025-03-10 13:59:20第02章_基本的SELECT語句
1. SQL的分類
DDL(數據定義語言),定義不同的數據庫、表、視圖、索引等數據庫對象,還可以用來創建、刪除、修改數據庫和數據表的結構;主要語句關鍵詞有CREATE、DROP、ALTER。
DML(數據操作語言),用於添加、刪除、更新和查詢數據庫記錄,並檢查數據完整性;主要語句關鍵詞有INSERT、DELETE、UPDATE、SELECT。
DCL(數據控制語言),用於定義數據庫、表、字段、用戶的訪問權限和安全級別;主要語句關鍵詞有GRANT、REVOKE、COMMIT、ROLLBACK、SAVEPOINT。
注意:因為查詢語句使用非常頻繁,所以很多人將其單拎出來一類為DQL(數據查詢語言);還有單獨將COMMIT、ROLLBACK取出來稱為TCL(事務控制語言)。
2. SQL語言的規則與規範
2.1 基本規則
SQL可以寫在一行或者多行。為了提高可讀性,各子句分行寫,必要時使用縮進。
每條命令以 ; 或 \g 或 \G 結束,後兩種在終端中執行命令行時可使用。
關鍵字不能被縮寫也不能分行。
關於標點符號
必須保證所有的()、單引號、雙引號是成對結束的。
必須使用英文狀態下的半角輸入方式。
字符串型和日期時間類型的數據可以使用單引號(' ')表示。
列的別名,盡量使用雙引號(" ")表示,而且不建議省略as。
2.2 SQL大小寫規範(建議遵守)
MySQL在Windows環境下是大小寫不敏感的。
MySQL在Linux環境下是大小寫敏感的
數據庫名、表名、表的別名、變量名是嚴格區分大小寫的。
關鍵字、函數名、列名(或字段名)、列的別名(字段的別名)是忽略大小寫的。
推薦採用統一的書寫規範
數據庫名、表名、表別名、字段名、字段別名等都小寫。
SQL關鍵詞、函數名、綁定變量等都大寫。
2.3 註釋
單行註釋:#註釋文字(MySQL特有的方式)。
單行註釋:-- 註釋文字(--後面必須包含一個空格)。
多行註釋:/
註釋文字 / 。
2.4 命名規則(暫時了解)
數據庫、表名不得超過30個字符,變量名限制為29個。
必須只能包含A-Z,a-z,0-9,_共63個字符。
數據庫名、表名、字段名等對象名中間不要包含空格。
同一個MySQL軟件中,數據庫不能同名;同一個庫中,表不能重名;同一個表中,字段不能重名。
必須保證字段沒有和保留字、數據庫系統或常用方法衝突。
保留字段名和類型的一致性,在命名字段並為其指定數據類型的時候一定要保持一致性。假如數據類型在一個表裡是整數,那在另一個表裡可就別變成字符型了。
2.5 數據導入指令
在命令行客戶端登陸mysql,使用 source 文件的全路徑名 指令導入。
基於具體的圖形化界面的工具。
3. 基本的SELECT語句
3.0 SELECT...
3.1 SELECT ... FROM
文法
選擇全部列
> 一般情況下,除非需要使用表中所有的字段數據,最好不要使用通配符‘
’。 > > 在生產環境下,不推薦使用 SELECT 進行查詢。
選擇特定的列
3.2 列的別名
重命名一個列,在列名和別名之間加入關鍵詞 AS,AS 可以省略,別名可以使用雙引號,以便在別名中包含空格或特殊字符並區分大小寫。
3.3 去除重複行
DISTINCT需要放到所有列名的前面,否則會報錯。
DISTINCT是對後面所有列名的組合進行去重。
3.4 空值參與運算
所有運算符或列值遇到null值,運算結果都為null。
注意,在MySQL裡,空值不等於空字符串。一個空字符串的長度是0,而一個空值的長度是空。 MySQL中空值是佔用空間的。
3.5 著重號
字段名或表名和保留字、關鍵字重名時,需加上著重號(``,反單引號)表明是字段名或表名,而不是保留字、關鍵字。
3.6 查詢常數
4. 顯示表結構
使用DESCRIBE 或 DESC 命令,表示表結構。
5. 過濾數據
使用WHERE子句,將不滿足條件的行過濾掉。
WHERE語句緊隨FROM子句。