ふりかえり

この記事では、テーブルデータを更新する方法を解説します。
テーブルの作成方法については、以下の記事を参照してください。

今回使用するテーブルは、以前作成したテーブルと同じよ!!

ちなみに、SQLの実行方法を知りたいという方は、
ぜひ!!下記の記事を参考にしてください。

環境構築が不要で、ブラウザで無料で使用できるから、
SQLの練習にはもってこいだよ!
今回のSQLも、Oracle Live SQLで実行していくよ!

テーブルにデータを挿入するINSERT文の解説は
下記の記事をご覧ください!
今回は、データを挿入した後に、更新していきます。

ぜひ、ご覧くださいませ!

テーブルからデータを取得する方法については、以下の記事を参照してください。

ぜひ、ご覧くださいませ!
update文を使ってテーブルを更新しよう

まずは、基本構文から見ていきましょう!
update テーブル名
set 列名1 = 値1, 列名2 = 値2, ...
where 条件;

update,set,whereだね。

はい、そうです。
ちなみに、where を書き忘れると、テーブル内のすべての行が変更される ので要注意です。
テーブル名:更新するデータが入っているテーブルの名前
set:変更したい列(カラム)と新しい値を指定
where:どの行を更新するのかを指定(省略すると全ての行が更新されるので注意!)

実際に、SQLを使用して確認していきましょう。
テーブルの作成に関しては以下を使用します。
<テーブル作成のSQL>
-- 申請管理情報テーブルの作成
create table 申請管理情報 (
STAFF_NO varchar2(10) not null, -- 職員番号 (Staff Number)
APPLI_NO varchar2(10) not null, -- 申請番号 (Application Number)
APPLI_DATE date, -- 申請年月日 (Application Date)
APPROVAL_DATE date, -- 承認日 (Approval Date)
SEND_BACK_DATE date, -- 差戻年月日 (Send Back Date)
APPLICATION_CONTENT varchar2(50), -- 申請内容 (Application Content)
constraint PK_申請管理情報 primary key (STAFF_NO, APPLI_NO)
);

SQLを実行して、テーブルが作成されたことが確認できましたら、
以下のSQLを実行して、データを挿入していきます。
<テーブルデータ挿入のSQL>
insert into 申請管理情報 (STAFF_NO, APPLI_NO, APPLI_DATE, APPROVAL_DATE, SEND_BACK_DATE, APPLICATION_CONTENT)
values ('1001', 'A001', to_date('2024-02-01', 'YYYY-MM-DD'), to_date('2024-02-05', 'YYYY-MM-DD'), NULL, 'ガソリン代支給');
<テーブルデータが挿入されているかを確認するSQL>
select * from 申請管理情報;

update文を使用して申請内容を変更してみよう
<テーブルデータ更新のSQL>
update 申請管理情報
set APPLICATION_CONTENT = '交通費支給'
where STAFF_NO = '1001' and APPLI_NO = 'A001';
申請管理情報 テーブルの APPLICATION_CONTENT を '交通費支給' に更新します。
STAFF_NO = '1001' かつ APPLI_NO = 'A001' のデータ 1件のみ を更新します。

update文を使用して承認日を変更してみよう
<テーブルデータ更新のSQL>
update 申請管理情報
set APPROVAL_DATE = to_date('2024-02-07', 'YYYY-MM-DD')
where STAFF_NO = '1001' and APPLI_NO = 'A001';

update文を使用して差戻し日を追加してみよう
<テーブルデータ更新のSQL>
update 申請管理情報
set SEND_BACK_DATE = to_date('2024-02-10', 'YYYY-MM-DD')
where STAFF_NO = '1001' and APPLI_NO = 'A001';

update文を使用して複数のカラムを同時に更新してみよう
<テーブルデータ更新のSQL>
update 申請管理情報
set APPLICATION_CONTENT = 'ガソリン追加支給',
APPROVAL_DATE = to_date('2024-02-26', 'YYYY-MM-DD'),
SEND_BACK_DATE = to_date('2024-02-27', 'YYYY-MM-DD')
where STAFF_NO = '1001' and APPLI_NO = 'A001';

まとめ

テーブルデータ更新について解説しました。
次回もお楽しみに!







コメント