【SQL】文字列を置換して、データの更新を行う方法

sql

こんにちは。菜笑なえです。
今回はSQLに関する内容になっています。

本記事の内容

  • SQLでの文字列の置換
  • SQLでのデータ更新
  • 【まとめ】置換したデータで更新

以上3点について解説していきます。

SQLでの文字列の置換

SQLでの文字列の置換方法は以下の通りです。

replace(置換したいデータ, '置換前の文字', '置換後の文字')

実際に使ってみます。

元の文字列

shops.name = '新宿店'

ここから という文字を削除したいです。
今回は置換で行うので、空の文字列に置換して削除したことにします。

replace(shops.name, '店', '')

これで「新宿店」を「新宿」にすることができました。

SQLでのデータ更新

SQLでのデータ更新の方法は以下の通りです。

update
  更新したいテーブル
set
  更新したいデータ = 更新する値
where 条件;

最後のwhere 条件 はテーブルから特定のデータだけ更新したい場合に使用します。

更新したいテーブルに入っている全データを更新する場合は、なしで大丈夫です。

実際に使ってみます。

update
  shops
set
  shops.name = '店名'
where id = 1;

これでshopsテーブルの中の、IDが1のデータだけ名前が「店名」に更新されます。

【まとめ】置換したデータで更新

最後に、上記の2つの方法を組み合わせます。

元のデータを置換して、更新します。

update
  shops
set
  shops.name = replace(shops.name, '店', '')
where id < 10;

これでIDが10以下のデータに対して、名前から「店」を除いた文字列を新しいデータとして更新できます。

おわりに

今回は置換というより不要文字を削除すること目的だったので、最初TRIM を使おうとしました。
ですが、TRIM は空白を削除するだけのものだったので、置換することに変更しました。

replace はいろんな言語であるメソッドだと思うので、理解しやすいかと思います。

SNS

Twitter:@nae310_
Instagram:310nae