資料庫操作的基石在於熟練掌握核心 SQL 語句。本文彙整 建庫/建表(DDL)、查詢(SELECT)、聚合統計、更新(UPDATE)、刪除(DELETE) 五大類高頻語法,附帶實戰範例,適合初學者速查與面試複習。
| 操作 | 語句範例 | 說明 |
|---|---|---|
| 顯示所有資料庫 | SHOW DATABASES; | MySQL 語法;SQL Server 用 SELECT name FROM sys.databases |
| 切換資料庫 | USE db_name; | 後續操作針對該庫 |
| 建立資料表 | CREATE TABLE coffee (id INT(5) NOT NULL, coffee_name VARCHAR(25)); | 定義主鍵建議加 PRIMARY KEY (id) |
| 新增欄位 | ALTER TABLE coffee ADD taste VARCHAR(10); | |
| 插入資料 | INSERT INTO coffee (id, coffee_name, taste, rank) VALUES (1, 'BlueMountain', 'well', 5); | 字串用單引號,數值直接寫 |
| 檢視表結構 | SHOW COLUMNS FROM coffee; / DESC coffee; | MySQL;SQL Server 用 sp_help 'coffee' |
| 查看建表語句 | SHOW CREATE TABLE coffee; | 便於遷移與版本控制 |
| 重命名資料表 | ALTER TABLE student RENAME TO ss; | MySQL 語法;SQL Server 用 sp_rename 'student', 'ss' |
| 刪除欄位 | ALTER TABLE ss DROP COLUMN mark; |
| 場景 | 語句範例 |
|---|---|
| 全欄位查詢 | SELECT * FROM coffee WHERE id = 1; |
| 指定欄位 | SELECT coffee_name FROM coffee WHERE id = 2; |
| 範圍查詢 | SELECT * FROM club WHERE id BETWEEN 1 AND 3; |
| 多值匹配 | SELECT * FROM club WHERE id IN (1,3,4); |
| 模糊查詢 | SELECT * FROM club WHERE name LIKE 'M%r'; SELECT * FROM club WHERE name LIKE 'M_r'; |
| 複合條件 | SELECT * FROM club WHERE id IN (1,3,4) AND mark > 50; |
| 排序 | SELECT * FROM club ORDER BY mark DESC; DESC 降序,ASC 升序 |
| 函數 | 用途 | 範例 |
|---|---|---|
COUNT(*) | 總行數 | SELECT COUNT(*) FROM club; |
COUNT(DISTINCT col) | 去重計數 | SELECT COUNT(DISTINCT mark) FROM club; |
SUM(col) | 求和 | SELECT SUM(mark) FROM club; |
AVG(col) | 平均值 | SELECT AVG(mark) FROM club; |
MAX(col) / MIN(col) | 極值 | SELECT MAX(mark), MIN(mark) FROM club; |
-- 更新
UPDATE club SET mark = mark - 8 WHERE id = 1;
-- 刪除
DELETE FROM club WHERE id = '001';
提醒:生產環境執行 UPDATE/DELETE 前,請先用 SELECT 驗證 WHERE 條件,並建議包裹在事務中。
COLLATE Latin1_General_CS_AS。BETWEEN 為閉區間,含邊界值。LIKE 中 % 代表任意長度(含 0),_ 代表單一字元;中文字在 UTF-8 下佔 3 位元組,但邏輯上仍視為單一字元。WHERE 的 UPDATE/DELETE。掌握上述語句,即可應付 80% 的日常開發與運維場景。建議收藏並實操演練,肌肉記憶才是硬實力。