Inserting, Deleting, and Update 輸入刪除更新資料
Inserting 輸入資料
指令:
Insert Into 表格名稱 (欄位名稱1, 欄位名稱2 ,… ) Values(值1, 值2,…)
範例:
use employee;
Deleting 刪除資料
指令:
Delete From 表格名稱 Where 條件
Update 更新資料
指令:
Update 表格名稱 Set 欄位名稱1=值1,
欄位名稱2=值2, … Where 條件
Querying 查詢資料
完整語法:
SELECT columns
FROM tables
[WHERE conditions]
[GROUP BY group
[HAVING group_conditions]]
[ORDER BY sort_columns]
[LIMIT limits];
簡易語法:
Select * From 表格名稱
Select 欄位1, 欄位2, … From 表格名稱 [Where 條件] Order By 欄位2 [ASC|DESC]
ASC:遞升排序
DESC:遞減排序
限制筆數查詢
語法:
limit 起點,終點
起點是0可省略, 起點不是0不可省略
條件查詢
Select 欄位1, 欄位2, … From 表格名稱
相異查詢
Select Distinct 欄位1, 欄位2, … From 表格名稱
功能:挑選表格的所有紀錄,顯示指定的欄位,但重複的結果只顯示㇐筆,DISTINCT 為不重複
計算資料數量
函數count
範例:
select count(job) from employee;
select count(distinct job) from employee;
指定表格查詢
在SELECT 敘述中表示欄位時,可以使用 table.column
來指定欄位。
範例:
select employee.name from employee;
指定資料庫及表格查詢
在SELECT 敘述中表示欄位時,可以 database.table.column
來表示欄位。
舉例
select employee.employee.name from employee;
指定別名查詢
使用 as
來指定別名
欄位、表格皆可取別名
as 可省略,另㇐種別名(中間不加逗號)
範例:
select name as employeeName from employee;
select e.name from employee as e;
進階查詢
使用 join
語法來連結多個表格
連結兩個表格
兩個表格必需含有同樣的值(㇐表格外鍵欄位參考另㇐表格欄位主鍵),該筆資料才會被選出。
select employee.name, department.name
from employee, department
where employee.departmentID = department.departmentID;
若兩個資料表沒有相同的資料連結,則資料會採乘機方式呈現
select employee.name, department.name from employee, department;
使用join連結多個資料表
基本表格連結
兩個表格必需含有同樣的值,該筆資料才會被選出
select employee.name, department.name from employee, department
where employee.departmentID = department.departmentID;
另㇐種語法
SELECT 欄位1,欄位2, …
FROM Table1 JOIN Table2 ON Table1.Col1 = Table2.Col2
where 條件
select employee.name, department.name
from employee join department
where employee.departmentID = department.departmentID;
表格左連結 left join
Left join
:只有㇐表格欄位出現該值,另㇐表格欄位並未出現
select employee.name
from employee left join assignment
on employee.employeeID = assignment.employeeID
where clientID is null;