首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL 入門基石:四大核心查詢指令 (SELECT、INSERT、DELETE、UPDATE) 完整入門指南

     編輯:關於SqlServer

無論您是否從事程式開發,身為現代開發者幾乎無法避開 SQL。本文為有興趣掌握資料庫操作的讀者撰寫,涵蓋資料操作語言 (DML) 四大基礎指令,建立扎實的 SQL 基礎。

什麼是 SQL 與關聯式資料庫?

SQL (Structured Query Language) 是 ANSI 維護的資料庫互動標準,最新版本為 SQL:2023。主流資料庫 (Oracle、SQL Server、MySQL、PostgreSQL、SQLite 等) 均支援 ANSI SQL-92 核心子集,並各自擴展專有語法。

核心觀念釐清

術語定義
RDBMS關聯式資料庫管理系統
資料庫邏輯容器,含多張資料表、視圖、程序等物件
資料表由欄位定義結構、列存放資料的二維結構
欄位特定資料類型的命名容器 (如 LastName 存姓氏)
列/記錄一橫列完整資料,對應一個實體實例
結果集查詢回傳的資料集合,可從單一欄位到完整資料庫

四大 DML 指令總覽

指令用途核心語法
SELECT查詢/檢索資料SELECT col1, col2 FROM table WHERE condition;
INSERT新增資料列INSERT INTO table (col1, col2) VALUES (val1, val2);
DELETE刪除資料列DELETE FROM table WHERE condition;
UPDATE修改現有資料UPDATE table SET col1=val1 WHERE condition;

SELECT 選項最豐富,支援 JOIN、UNION、子查詢等進階組合,後續文章將深入探討。

SELECT — 檢索儲存資訊

基本查詢

-- 指定欄位
SELECT column1, column2 FROM table_name;

-- 全欄位 (開發/除錯適用,生產環境建議明確列出欄位)
SELECT * FROM table_name;

WHERE 子句 — 精準過濾

-- 等值比較
SELECT * FROM table_name WHERE column1 = 3;

-- 多條件組合
SELECT * FROM Products
WHERE category = 'Electronics' AND price < 1000;

常用比較運算子

運算子意義範例
=等於age = 25
<> / !=不等於status <> 'Closed'
> / <大於/小於price > 100
>= / <=大於等於/小於等於qty >= 10
BETWEEN區間 (含邊界)age BETWEEN 18 AND 65
IN集合成員color IN ('Red','Blue')
LIKE模糊比對name LIKE 'J%'
IS NULL空值檢查email IS NULL

INSERT — 新增資料

-- 明確指定欄位 (推薦)
INSERT INTO Customers (name, email, city)
VALUES ('John Doe', 'john@example.com', 'Taipei');

-- 全欄位依序插入 (不推薦,結構變更易出錯)
INSERT INTO Customers VALUES ('Jane', 'jane@example.com', 'Taichung');

UPDATE — 修改資料

UPDATE Products
SET price = price * 1.1, updated_at = CURRENT_TIMESTAMP
WHERE category = 'Electronics';

⚠️ 必加 WHERE:未加條件將更新整張表所有列!

DELETE — 刪除資料

DELETE FROM Orders
WHERE order_date < '2020-01-01' AND status = 'Cancelled';

⚠️ 同樣必加 WHERE:避免誤刪全表資料。大量刪除考慮 TRUNCATE TABLE (無法回滾、速度較快)。

實務黃金法則

  1. 先 SELECT 再修改:執行 UPDATE/DELETE 前,先用相同 WHERE 條件跑 SELECT 確認影響範圍
  2. 交易控制:重要操作包在 BEGIN TRANSACTION ... COMMIT/ROLLBACK 中
  3. 備份優先:生產環境異動前務必備份
  4. 明確列出欄位:避免 SELECT * 與 INSERT VALUES 省略欄位清單

下一步學習路徑

  • 進階 SELECT:排序、分組、彙總、JOIN、子查詢
  • 資料定義語言 (DDL):建立/修改/刪除資料表結構
  • 資料控制語言 (DCL):權限管理
  • 交易處理與並發控制
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved