SQL 快速參考手冊:
為方便快速學習和實踐,提供了一份 SQL 快速參考手冊,您可以打印出來隨時查看,了解常見 SQL 命令的語法和用法。
SQL 數據類型
SQL 數據類型根據不同的數據庫系統(如 Microsoft Access、MySQL、SQL Server 等)有所不同。以下是一些常見的 SQL 數據類型和它們的適用范圍:
1. 數值類型:
-
INT:用于存儲整數。
-
DECIMAL:用于存儲精確的小數值。
-
FLOAT/REAL:用于存儲浮動小數點數字。
-
BIGINT:用于存儲大整數。
2. 字符類型:
-
VARCHAR:用于存儲可變長度的字符串。
-
CHAR:用于存儲固定長度的字符串。
-
TEXT:用于存儲較長的文本數據。
3. 日期和時間類型:
-
DATE:用于存儲日期(年-月-日)。
-
TIME:用于存儲時間(小時:分鐘:秒)。
-
DATETIME:用于存儲日期和時間。
-
TIMESTAMP:用于存儲時間戳,通常用于記錄數據的創建或修改時間。
4. 二進制類型:
-
BLOB:用于存儲二進制數據(如圖像、視頻等)。
5. 布爾類型:
-
BOOLEAN:用于存儲
TRUE
或FALSE
值。
SQL 基本操作
1. 查詢數據
SQL 查詢的基本語句是 SELECT
,它用于從數據庫中檢索數據。
SELECT column1, column2 FROM table_name;
-
*
表示選擇所有列。 -
例如:
SELECT * FROM Websites;
2. 插入數據
使用 INSERT INTO
語句將數據插入到表中。
INSERT INTO table_name (column1, column2) VALUES (value1, value2);
例如:
INSERT INTO Websites (name, url) VALUES ('Google', 'https://www.google.com');
3. 更新數據
使用 UPDATE
語句更新表中的現有數據。
UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;
例如:
UPDATE Websites SET name = 'Google Search' WHERE name = 'Google';
4. 刪除數據
使用 DELETE
語句刪除表中的數據。
DELETE FROM table_name WHERE condition;
例如:
DELETE FROM Websites WHERE name = 'Google Search';
5. 創建表
使用 CREATE TABLE
創建新的表。
CREATE TABLE table_name ( column1 datatype, column2 datatype, ... );
例如:
CREATE TABLE Websites ( id INT PRIMARY KEY, name VARCHAR(255), url VARCHAR(255) );
6. 刪除表
使用 DROP TABLE
刪除表及其所有數據。
DROP TABLE table_name;
SQL 高級功能
1. 聯合查詢 (JOIN):
用于從多個表中檢索相關數據。常見的聯合查詢有:
-
INNER JOIN:返回兩個表中滿足條件的記錄。
-
LEFT JOIN:返回左表的所有記錄,以及右表中滿足條件的記錄。
-
RIGHT JOIN:返回右表的所有記錄,以及左表中滿足條件的記錄。
-
FULL OUTER JOIN:返回兩個表中所有的記錄。
SELECT column1, column2 FROM table1 INNER JOIN table2 ON table1.column = table2.column;
2. 子查詢:
子查詢是嵌套在其他 SQL 語句中的查詢,可以在 SELECT
、INSERT
、UPDATE
和 DELETE
中使用。
SELECT column1 FROM table1 WHERE column2 = (SELECT column2 FROM table2 WHERE condition);
3. 聚合函數:
常用的聚合函數有:
-
COUNT():計算行數
-
SUM():計算總和
-
AVG():計算平均值
-
MAX():計算最大值
-
MIN():計算最小值
例如:
SELECT COUNT(*) FROM Websites;
4. 索引:
創建索引可以加速查詢。常用語法:
CREATE INDEX index_name ON table_name (column_name);