認識 MySQL 操作指令

前言

以 MySQL 為例。

登入

使用 mysql 指令登入。

1
2
3
4
mysql // 直接登入
mysql -u -p // 詢問密碼登入
mysql -u --password="secret" // 指定密碼登入
mysql --user="homestead" --password="secret" // 指定使用者和密碼登入

資料庫操作

列出所有資料庫。

1
SHOW DATABASES;

使用資料庫。

1
USE [DATABASE NAME];

顯示當前使用的資料庫。

1
SELECT DATABASE();

建立資料庫。

1
CREATE DATABASE [DATABASE NAME];

刪除資料庫。

1
DROP DATABASE [DATABASE NAME];

資料表操作

列出所有資料表。

1
SHOW TABLES;

列出資料表所有欄位。

1
2
DESCRIBE [TABLE NAME];
SHOW COLUMNS FROM [TABLE NAME]; // 結果同上

列出欄位所有索引。

1
SHOW INDEX FROM [TABLE NAME];

新增資料

1
INSERT INTO [TABLE NAME] ([COLUMN NAME 1], [COLUMN NAME 2]) VALUES ([VALUE 1], [VALUE 2]);

查詢資料

查詢所有資料。

1
SELECT * FROM [TABLE NAME];

查詢特定欄位資料。

1
SELECT [COLUMN NAME 1], [COLUMN NAME 2] FROM [TABLE NAME];

查詢特定條件資料。

1
SELECT [COLUMN NAME] FROM [TABLE NAME] [Where Clause];

更新資料

1
UPDATE [TABLE NAME] SET [COLUMN NAME 1] = [VALUE 1], [COLUMN NAME 2] = [VALUE 2] [WHERE Clause];

刪除資料

1
DELETE FROM [TABLE NAME] [WHERE Clause];

WHERE 子句

1
WHERE [COLUMN NAME 1] = [VALUE 1] [=, >, =>, <, =<, <>, !=, AND, OR, NOT] [COLUMN NAME 2] = [VALUE 2]

LIKE 子句

1
WHERE [COLUMN NAME 1] LIKE [VALUE]
模糊匹配 範圍
‘%a’ 以 a 結尾的資料
‘a%’ 以 a 開頭的資料
‘%a%’ 含有 a 的資料
a 三位且中間字母是 a 的資料
‘_a’ 兩位且結尾字母是 a 的資料
‘a_‘ 兩位且開頭字母是 a 的資料

BETWEEN 子句

1
WHERE [COLUMN NAME] BETWEEN [VALUE 1] AND [VALUE 2];