MySQLで特定のセルの内容を更新する方法
MySQLでは、UPDATE文とWHERE句を組み合わせることで、テーブル内の特定のセル(行の特定のカラム)の内容を簡単に更新できます。この記事では、実際のコード例を通じて、その手順をわかりやすく解説します。
1. サンプルテーブルを作成する
まず、デモ用のテーブルを作成しましょう。
mysql> create table DemoTable2029 -> ( -> Id int, -> FirstName varchar(20), -> LastName varchar(20) -> ); Query OK, 0 rows affected (0.98 sec)
2. レコードを挿入する
次に、INSERTコマンドを使ってテーブルにいくつかのレコードを追加します。
mysql> insert into DemoTable2029 values(1,'Chris','Brown'); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable2029 values(2,'David','Miller'); Query OK, 1 row affected (0.12 sec) mysql> insert into DemoTable2029 values(3,'John','Smith'); Query OK, 1 row affected (0.20 sec) mysql> insert into DemoTable2029 values(4,'John','Brown'); Query OK, 1 row affected (0.27 sec)
3. テーブルの内容を確認する
SELECT文ですべてのレコードを表示してみましょう。
mysql> select *from DemoTable2029;
実行結果は以下の通りです。
+------+-----------+----------+ | Id | FirstName | LastName | +------+-----------+----------+ | 1 | Chris | Brown | | 2 | David | Miller | | 3 | John | Smith | | 4 | John | Brown | +------+-----------+----------+ 4 rows in set (0.00 sec)
4. 特定のセルを更新する
ここからが本題です。特定のセルを更新するには、UPDATE文で対象のカラムに新しい値を設定し、WHERE句で更新対象の行を指定します。以下の例では、Id=4 の行にある FirstName と LastName を更新しています。
mysql> update DemoTable2029 -> set FirstName='Adam',LastName='Smith' -> where Id=4; Query OK, 1 row affected (0.14 sec) Rows matched: 1 Changed: 1 Warnings: 0
5. 更新結果を確認する
もう一度SELECT文を実行して、テーブルの内容を確認します。
mysql> select *from DemoTable2029;
実行結果は以下の通りです。Id=4 の行が「Adam Smith」に更新されていることがわかります。
+------+-----------+----------+ | Id | FirstName | LastName | +------+-----------+----------+ | 1 | Chris | Brown | | 2 | David | Miller | | 3 | John | Smith | | 4 | Adam | Smith | +------+-----------+----------+ 4 rows in set (0.00 sec)
まとめ
MySQLで特定のセルの内容を更新する基本構文は以下の通りです。
UPDATE テーブル名 SET カラム名1 = 値1, カラム名2 = 値2, ... WHERE 条件;
WHERE句で対象の行を正確に指定することが重要です。条件を指定しない場合、テーブル全体が更新されるため、実行前には必ずWHERE句の内容を確認する習慣をつけましょう。
-
MySQLで特定ユーザーのログイン時刻を更新する方法をわかりやすく解説
MySQLで特定のユーザーのログイン時刻を更新したい場合は、UPDATE文にORDER BYとLIMITを組み合わせると便利です。この記事では、実際のサンプルコードと実行結果をもとに、手順を詳しく解説します。1. サンプルテーブルを作成するまず、ユーザーID・ログイン時刻・ユーザー名の3つのカラムを持つテーブルを作成します。mysql> create table DemoTable1911 ( UserId int, UserLoggedInTime time, UserName varchar(20) ); Query OK, 0 rows af
-
MySQLで特定の日付のレコード数をカウントする方法
MySQLでは、COUNT(*)関数とWHERE句を組み合わせることで、特定の日付に該当するレコードの件数を簡単に取得できます。この記事では、サンプルテーブルを作成し、指定した日付のデータ件数をカウントする手順を順番に解説します。 1. サンプルテーブルの作成 まず、日付型(DATE)のカラムを持つテーブルを作成しましょう。 mysql> create table DemoTable1946 ( ShippingDate date ); Quer