SQL DELETE

これをマスター

マスター DELETEでレコード削除

テーマ

要らなくなったで商品情報を削除しよう
 
 
テーブル: product
 商品ID商品タイプ商品名価格
1P0001有機豆ブラジル人-オーガニック250
2P0002ハウスブレンドビーンズ私たちの昔のダイナーブレンド700
3P0003エスプレッソビーンズエスプレッソロースト500
4P0004エスプレッソビーンズプリモエスプレッソロースト500
5P0005グルメビーンズコロンビアのミディアムロースト245
6P0006グルメビーンズエチオピア300
7P0007プレミアムビーンズジャマイカコーヒーリバー600
8
9
10
結果 (スペース都合で5行のみ表示)
 商品ID商品タイプ商品名価格
1P0002ハウスブレンドビーンズ私たちの昔のダイナーブレンド700
2P0003エスプレッソビーンズエスプレッソロースト500
3P0004エスプレッソビーンズプリモエスプレッソロースト500
4P0005グルメビーンズコロンビアのミディアムロースト245
5P0006グルメビーンズエチオピア300

はじめに

UPDATE テーブル名 SET [コラム名]=XXX

SQLでデータベースのデータ行を削除するには

DELETEを使います

通常WHERE句を付けて
条件に合った行を削除します

WHERE句を付けないとそのテーブルの全部のデータが削除されてしまいます

詳しく

例を見ていきましょう

商品ID: P0001の商品データを消しています

DELETEの基本構造は

DELETE FROM テーブル名 WHERE 条件

このまま覚えちゃいましょう

ここでは product というテーブルの

SET の後の [商品名]=’ブラジリアン-オーガニック’

左 : [商品名]のコラムに = 右 : ‘ブラジリアン-オーガニック’を代入してね

と言う意味になります

WHERE [商品ID]=’P0001′

特定の商品IDを指定しています

もう一歩

WHERE句をもう少し複雑にして

WHERE [商品ID] IN (’P0001′, ’P0002, ’P0003′)

などとして
P0001からP0003までを消す事もできます

実務的に


ただ実務的にシステムを設計する際には
DELETE を使ってデータを削除する代わりに

たとえば [ステータス] などのようなカラムを追加して
ステータス = “削除” などのようにして
なんでもかんでもデータを削除することは避けます

これは一度データを消してしまうと
万一システムやビジネス上で問題があった場合
トラッキング出来ないためや
バックエンドのコールセンターのシステムで
お客さんが削除した、履歴が見えるようにするためです


あわせてご覧ください

EXCEL CONCAT

Excel

Excel EOMONTHの使い方を分かりやすい例で紹介

Read More

SQL HAVING

SQL

SQL Tips

Read More