前回は、テーブルの作成方法について説明しました。今回は、テーブルにデータを追加するINSERT文について説明していきます!
INSERT文の使い方
データを1行追加する
データを1行だけ追加する場合のINSERT文は下記のように記述します。
INSERT INTO テーブル名
VALUES (値1, 値2, 値3…);
例えば、家計簿テーブルを作ったとして
CREATE TABLE household_account1 (
id INT PRIMARY KEY,
transaction_date DATE,
expense VARCHAR2(20),
memo VARCHAR2(80),
deposit INT,
withdrawal INT
);
この家計簿テーブルにデータをINSERT文で追加する時は、下記のような記述になります。
INSERT INTO
household_account1
VALUES
(
-- id
1,
-- transaction_date
TO_DATE('2024-03-21', 'YYYY-MM-DD'),
-- expense
'食事',
-- memo
'昼食(ラーメン)',
-- deposit
NULL,
-- withdrawal
1200
);
登録したデータをSELECT文で取得すると…
SELECT
TO_CHAR(transaction_date, 'YYYY/MM/DD') AS "日付",
expense AS "費目",
memo AS "メモ",
deposit AS "入金額",
withdrawal AS "出金額"
FROM
household_account1
無事に取得することができました。
日付 | 費目 | メモ | 入金額 | 出金額 |
---|---|---|---|---|
2024/03/21 | 食事 | 昼食(ラーメン) | – | 1200 |
データを複数行追加する
データを複数行追加する場合のINSERT文は下記のように記述します。
INSERT ALL
INSERT INTO テーブル名 VALUES (値1, 値2, 値3…)
INSERT INTO テーブル名 VALUES (値1, 値2, 値3…)
:
SELECT * FROM DUAL;
データを1行追加する時と書き方はほぼ変わりませんが、「ALL」が含まれていることや最後に「SELECT」しないといけない点に気をつけましょう。
上のサンプルコードにさらにデータを追加したいと思います。
INSERT
ALL INTO household_account1
VALUES
(
2,
TO_DATE('2024-03-20', 'YYYY-MM-DD'),
'入金',
'生活費',
100000,
0
) INTO household_account1
VALUES
(
3,
TO_DATE('2024-03-20', 'YYYY-MM-DD'),
'光熱費',
'電気代支払い',
0,
10000
) INTO household_account1
VALUES
(
4,
TO_DATE('2024-03-21', 'YYYY-MM-DD'),
'交通費',
'電車代支払い',
0,
1500
) INTO household_account1
VALUES
(
5,
TO_DATE('2024-03-22', 'YYYY-MM-DD'),
'食事',
'夜食(チャーハン)',
0,
900
) INTO household_account1
VALUES
(
6,
TO_DATE('2024-03-23', 'YYYY-MM-DD'),
'レジャー',
'映画鑑賞',
0,
2500
)
SELECT
*
FROM
DUAL;
追加したデータをSELECT文で取得。
SELECT
TO_CHAR(transaction_date, 'YYYY/MM/DD') AS "日付",
expense AS "費目",
memo AS "メモ",
deposit AS "入金額",
withdrawal AS "出金額"
FROM
household_account1
ORDER BY
transaction_date ASC
取得すると、追加したデータが無事に全て取得できました!
日付 | 費目 | メモ | 入金額 | 出金額 |
---|---|---|---|---|
2024/03/20 | 入金 | 生活費 | 100000 | 0 |
2024/03/20 | 光熱費 | 電気代支払い | 0 | 10000 |
2024/03/21 | 食事 | 昼飯(ラーメン) | – | 1200 |
2024/03/21 | 交通費 | 電車代支払い | 0 | 1500 |
2024/03/22 | 食事 | 夜食(チャーハン) | 0 | 900 |
2024/03/23 | レジャー | 映画鑑賞 | 0 | 2500 |
まとめ
データを追加する時は、INSERT文を使いますが「1行データを追加する時と複数データを追加する時の書き方には違いがある」ことを覚えておきましょう!
コメント