在學習redis時牽扯到一些sql的基礎知識,發現有很多遺忘的地方,這裡重新複習一下
事務
-- 開始事務
START TRANSACTION;
-- 執行一些SQL語句
UPDATE accounts SET balance = balance - 100 WHERE user_id = 1;
UPDATE accounts SET balance = balance + 100 WHERE user_id = 2;
-- 判斷是否要提交還是回滾
IF (條件) THEN
COMMIT; -- 提交事務
ELSE
ROLLBACK; -- 回滾事務
END IF;
上面為一個事務的例項,事務處理可以用來維護資料庫的完整性,保證成批的 SQL 語句要麼全部執行,要麼全部不執行。主要用於處理操作量大,複雜度高的資料
索引
MySQL 索引是一種資料結構,用於加快資料庫查詢的速度和效能。
以下例項假設我們有一個名為 students 的表,包含 id、name 和 age 列,我們將在 name 列上建立一個普通索引。
CREATE INDEX idx_name ON students (name);
透過使用索引,MySQL 可以直接定位到滿足查詢條件的資料行,而無需逐行掃描整個表。
MySQL 正規表示式