第5章 UPDATEステートメント

まず、サンプルとして利用するテーブルを定義します。ここでは、従業員情報を保持する「Employees」テーブルとします。このテーブルは以下のような構造を持つとしましょう。

CREATE TABLE Employees (
    EmployeeID INT PRIMARY KEY,
    Name VARCHAR(30),
    Department VARCHAR(30),
    Salary INT,
);

次に、データをこのテーブルに挿入します。挿入は以下のようにINSERT INTOクエリを使用して行います。

INSERT INTO Employees (EmployeeID, Name, Department, Salary)
VALUES (1, 'Bob', 'Sales', 5000),
       (2, 'Amy', 'HR', 6000),
       (3, 'Mark', 'IT', 7000),
       (4, 'Jane', 'Marketing', 8000);

ここで、すべての従業員のデータを取得するには、SELECTクエリを使用します。以下のクエリはテーブルからすべてのデータを取得します。

SELECT * FROM Employees;
EmployeeID Name Department Salary
1 Sales Doe 5000
2 Amy HR 6000
3 Mark IT 7000
4 Jane Marketing 8000

以下はUPDATEステートメントの使用例となります。


特定の従業員の給与を上げる

例えば、Bobの給与を5500に上げるには以下のようにします。

UPDATE Employees
SET Salary = 5500
WHERE Name = 'Bob';


全従業員の給与を一定のパーセントで上げる

例えば、全従業員の給与を10%上げるには以下のようにします。

UPDATE Employees
SET Salary = Salary * 1.1;


特定の部署の従業員の給与を上げる

例えば、Sales部門の従業員の給与を500上げるには以下のようにします。

UPDATE Employees
SET Salary = Salary + 500
WHERE Department = 'Sales';


複数のカラムを一度に更新する

例えば、名前が"Amy"の従業員の部署を"Marketing"に、給与を"7000"に更新するには以下のようにします。

UPDATE Employees
SET Department = 'Marketing', Salary = 7000
WHERE Name = 'Amy';