カテゴリ: PostgreSQL 更新日: 2026/01/06

PostgreSQLのUPDATE文の使い方(部分更新・条件更新)

PostgreSQLのUPDATE文の使い方(部分更新・条件更新)
PostgreSQLのUPDATE文の使い方(部分更新・条件更新)

先生と生徒の会話形式で理解しよう

生徒

「PostgreSQLのUPDATEって、何をするためのものなんですか?」

先生

「UPDATEは、すでに表に入っているデータを書き直すための命令です。名簿の年齢や住所を消しゴムで直すイメージですね。」

生徒

「間違えて全部消えたりしませんか? パソコンが苦手なので心配です。」

先生

「ポイントを押さえれば大丈夫です。どこを直すのか、誰を直すのかを一つずつ確認しながら説明します。」

1. SQLとは何か?

1. SQLとは何か?
1. SQLとは何か?

SQLは、データベースと呼ばれる「情報を整理して保管する箱」に対して指示を出すための言葉です。PostgreSQLは、そのSQLを使って操作できる代表的なデータベースです。

SQLを使うことで、表の中の情報を見たり、新しく追加したり、内容を変更したりできます。UPDATE文は、その中でも「変更」を担当します。

2. UPDATE文の役割

2. UPDATE文の役割
2. UPDATE文の役割

UPDATE文は、すでに存在しているデータを新しい内容に書き換えるための命令です。

現実でたとえると、名簿に書いてある年齢が一つ増えたので、数字を書き直す作業にあたります。行を消して書き直すのではなく、必要な部分だけを修正します。

3. 今回使うテーブルを確認しよう

3. 今回使うテーブルを確認しよう
3. 今回使うテーブルを確認しよう

以下のusersテーブルを使って説明します。会員の情報が入っている表です。


id | name       | age | email
---+------------+-----+-------------------
1  | 山田太郎   | 25  | taro@example.com
2  | 佐藤花子   | 19  | hanako@example.com
3  | 鈴木一郎   | 30  | ichiro@example.com
4  | 高橋次郎   | 22  | jiro@example.com

4. UPDATE文の基本の形

4. UPDATE文の基本の形
4. UPDATE文の基本の形

UPDATE文の基本的な形はとてもシンプルです。


UPDATE users
SET age = 26
WHERE id = 1;

SETは「どこを直すか」、WHEREは「誰を直すか」を指定します。ここでは、idが1の山田太郎さんの年齢を26に変更しています。


id | name       | age | email
---+------------+-----+-------------------
1  | 山田太郎   | 26  | taro@example.com
2  | 佐藤花子   | 19  | hanako@example.com
3  | 鈴木一郎   | 30  | ichiro@example.com
4  | 高橋次郎   | 22  | jiro@example.com

5. 部分更新とは何か

5. 部分更新とは何か
5. 部分更新とは何か

部分更新とは、1行の中の一部の項目だけを変更することです。

UPDATE文では、SETで指定した列だけが変更され、それ以外の情報はそのまま残ります。これは名簿の「名前はそのまま、年齢だけ直す」作業と同じです。

6. 複数の列を同時に更新する

6. 複数の列を同時に更新する
6. 複数の列を同時に更新する

UPDATE文では、複数の項目を一度に変更することもできます。


UPDATE users
SET age = 20, email = 'hanako_new@example.com'
WHERE id = 2;

カンマで区切ることで、年齢とメールアドレスを同時に変更できます。

7. 条件更新とは何か

7. 条件更新とは何か
7. 条件更新とは何か

条件更新とは、WHEREを使って「条件に合う人だけ」をまとめて更新する方法です。

たとえば「20歳未満の人を全員20歳にする」といった操作ができます。


UPDATE users
SET age = 20
WHERE age < 20;

条件を正しく書くことで、狙ったデータだけを安全に変更できます。

8. WHEREを書かないとどうなるか

8. WHEREを書かないとどうなるか
8. WHEREを書かないとどうなるか

UPDATE文で最も注意が必要なのがWHEREの書き忘れです。

WHEREを書かないと、表の中のすべての行が更新されてしまいます。名簿全員の年齢を同じ数字に書き換えるようなものなので、とても危険です。

初心者のうちは「UPDATEには必ずWHEREを書く」と覚えておくと安心です。

9. UPDATE文を学ぶ意味

9. UPDATE文を学ぶ意味
9. UPDATE文を学ぶ意味

UPDATE文を使えるようになると、データを正しい状態に保てるようになります。

情報は時間とともに変わります。その変化に対応するために、UPDATE文は欠かせない存在です。

まずは一人分、次に条件付き、と段階的に慣れていきましょう。

カテゴリの一覧へ
新着記事
New1
PostgreSQL
PostgreSQLのLIMIT・OFFSETとパフォーマンス問題を完全解説|初心者でもわかる安全な使い方
New2
MySQL
MySQLのUPDATE文でデータを更新する基本を徹底解説|SQL初心者でもわかるデータベース更新入門
New3
PostgreSQL
PostgreSQLのOFFSET完全入門|並び替えと組み合わせてデータをスキップする方法を初心者向けに解説
New4
MySQL
MySQLで複数行INSERTを行う方法と注意点を徹底解説|SQL基礎から学ぶデータベース入門
人気記事
No.1
Java&Spring記事人気No1
PostgreSQL
PostgreSQLのDISTINCT完全ガイド|SQLで重複データを除外する方法を初心者向けに解説
No.2
Java&Spring記事人気No2
PostgreSQL
PostgreSQLの主キー・外部キーを完全解説!初心者でもわかる設定方法と考え方
No.3
Java&Spring記事人気No3
PostgreSQL
PostgreSQLのUPDATE文の使い方(部分更新・条件更新)
No.4
Java&Spring記事人気No4
PostgreSQL
PostgreSQLのLEFT JOIN完全入門!不足データを補いながらテーブル結合する仕組みをやさしく解説
No.5
Java&Spring記事人気No5
PostgreSQL
PostgreSQLとは?初心者向けに特徴をわかりやすく解説
No.6
Java&Spring記事人気No6
PostgreSQL
PostgreSQLスキーマ設計のベストプラクティス完全ガイド|初心者でもわかるデータベース整理術
No.7
Java&Spring記事人気No7
PostgreSQL
PostgreSQLのpublicスキーマの役割と扱い方
No.8
Java&Spring記事人気No8
PostgreSQL
PostgreSQLスキーマ作成・削除完全ガイド!初心者でもわかるデータベース設計の基礎