MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでEmployeeIdを条件に特定のレコードを削除する方法

MySQLのDELETE文で特定のレコードを削除する

MySQLでは、DELETE文WHERE句を組み合わせることで、EmployeeIdなどの特定の条件に一致するレコードだけを削除できます。WHERE句を指定しないとテーブル内の全レコードが削除されてしまうため、必ず条件を指定するようにしましょう。

ここでは、サンプルテーブル「DemoTable615」を使って、EmployeeIdに基づいて特定のレコードを削除する手順を解説します。

1. テーブルを作成する

まず、以下のコマンドでテーブルを作成します。

mysql> create table DemoTable615 (EmployeeId varchar(100), EmployeeName varchar(100));
Query OK, 0 rows affected (0.62 sec)

2. レコードを挿入する

INSERT文を使って、テーブルにいくつかのレコードを挿入します。

mysql> insert into DemoTable615 values('EMP-101','Adam');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable615 values('EMP-1001','David');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable615 values('EMP-1002','Chris');
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable615 values('EMP-1003','Robert');
Query OK, 1 row affected (0.21 sec)

3. テーブルの内容を確認する

SELECT文ですべてのレコードを表示してみましょう。

mysql> select *from DemoTable615;

実行結果は以下の通りです。

+------------+--------------+
| EmployeeId | EmployeeName |
+------------+--------------+
| EMP-101 | Adam |
| EMP-1001 | David |
| EMP-1002 | Chris |
| EMP-1003 | Robert |
+------------+--------------+
4 rows in set (0.00 sec)

4. 特定のレコードを削除する

次のクエリを実行すると、EmployeeIdが「EMP-1002」のレコードを削除できます。

mysql> delete from DemoTable615 where EmployeeId='EMP-1002';
Query OK, 1 row affected (0.13 sec)

このように、WHERE句で削除したいレコードの条件(ここではEmployeeId='EMP-1002')を指定することで、該当する1件だけを安全に削除できます。

5. 削除後のテーブルを確認する

もう一度SELECT文を実行して、レコードが正しく削除されたか確認しましょう。

mysql> select *from DemoTable615;

実行結果は以下の通りです。

+------------+--------------+
| EmployeeId | EmployeeName |
+------------+--------------+
| EMP-101 | Adam |
| EMP-1001 | David |
| EMP-1003 | Robert |
+------------+--------------+
3 rows in set (0.00 sec)

出力結果から、「EMP-1002(Chris)」のレコードが削除され、残りの3件のみが表示されていることがわかります。

まとめ

MySQLで特定のレコードを削除するには、DELETE文にWHERE句で条件を指定します。EmployeeIdのように一意な値を条件にすれば、意図したレコードだけを確実に削除できます。誤削除を防ぐため、実行前にSELECT文で対象レコードを確認しておくこともおすすめします。

  1. MySQLで特定のセルの内容を更新する方法

    MySQLでは、UPDATE文とWHERE句を組み合わせることで、テーブル内の特定のセル(行の特定のカラム)の内容を簡単に更新できます。この記事では、実際のコード例を通じて、その手順をわかりやすく解説します。 1. サンプルテーブルを作成する まず、デモ用のテーブルを作成しましょう。 mysql> create table DemoTable2029     -> (     -> Id int,     -> FirstName varchar(2

  2. MySQLで特定の値より大きいレコードだけを抽出する方法|WHERE句を使った条件指定の基本

    MySQLで特定の値以下のレコードを除外するには? MySQLである値を基準に、それより小さいレコードを除外し、大きい値を持つレコードだけを取得したい場合は、WHERE句に比較演算子「>(より大きい)」を組み合わせるのが基本です。 基本構文 SELECT * FROM テーブル名 WHERE カラム名 > 値; この構文により、指定したカラムの値が条件値より大きい行のみが結果セットとして返されます。 実際に試してみよう:サンプルテーブルの作成 まずは動作を確認するためのテーブルを作成します。 mysql> create table demo27 -> ( ->