はじめてのSQL

SQL はじめてのUPDATE文書き方

はじめてのSQL入門 データベース言語SQLってなに? どんな言語でどんな役割があるのかな基本的なSQLの仕組みを解説...
SQLで基本の4大命令
SELECT文 【検索】 テーブルからデータを指定して取得する
UPDATE文 【更新】テーブルのデータを書き換える
INSERT文 【追加】テーブルにデータを追加する
DELETE文 【消去】テーブルに存在するデータを削除する
今回はこの中からUPDATE文について説明していきます

SQLで共通する基本ルール

  • 文の途中でも改行を入れる事が出来る
  • 行の先頭や途中でも空白を入れる事が出来る
  • 大文字でも小文字でもどちらでもOK
  • 『/*』~『/*』はコメントとして無視される
  • 1つのSQL分の終わりには『;』セミコンロの記号を付ける

 

 

UPDATE文書き方

UPDATE文とは【更新】既に存在するテーブルのデータを書き換える為の命令文です
今回は会計事務所テーブルを使って説明していきます

例)会計事務所 データベース

会計事務所テーブル   ~横に3つの列~
会計事務所コード会計事務所名称電話番号
01大阪会計事務所111-111-1111
02和歌山会計事務所222-222-2222
03京都会計事務所333-333-3333
04名古屋会計事務所444-444-4444
~縦にに4つの行~

基本的な UPDATE 文 の構造

UPDATE 会計事務所(UPDATEの後にテーブル名を指定する)
  SET 電話番号 = 123-4567-890(更新したい 列名 = 値 を書く)
WHERE 会計事務所名称 = 大阪会計事務所 
(↑どの列のどこを書き換えるか指定)

ここで使われている比較演算子と言い
上記の場合SET で電話番号を123-4567-890に変える
WHEREで会計事務所の列から大阪事務所と等しい 
会計事務所名称の列の中から大阪会計事務所と等しい行の電話番号を更新するという意味になります
【更新結果】
会計事務所テーブル  

会計事務所コード会計事務所名称電話番号
01大阪会計事務所123-4567-890
02和歌山会計事務所222-222-2222
03京都会計事務所333-333-3333
04名古屋会計事務所444-444-4444
比較演算子早見表
比較演算子 意味
左右の値が等しい
左側は右より小さい
左側は右よりも大きい
<= 左側は右側の値以下
>= 左側は右側の値以上
<> 左右の値が等しくない
【比較演算子とは】初心者 早見表さまざまな条件式で使われる比較演算子ですが 書き方を間違えると全く反対の意味になってしまいますが ついついこの場合はと混乱する事ありませんか?...

もしもUPDATE文にWHEREでどの列のどこを書き換えるか指定しないとUPDATEで指定されているテーブルの電話番号が全て更新されてしまいます 

UPDATE 会計事務所(UPDATEの後にテーブル名を指定する)
  SET 電話番号 = 123-4567-890(更新したい 列名 = 値 を書く)

【更新結果】
会計事務所テーブル  
会計事務所コード会計事務所名称電話番号
01大阪会計事務所123-4567-890
02和歌山会計事務所123-4567-890
03京都会計事務所123-4567-890
04名古屋会計事務所123-4567-890

一度に全ての行の値を変更する事は あまり無くほとんどの場合
この列のこの行の値を更新するという使い方をするので
実務上WHEREを使わないUPDATE文はほとんど使う機会が無いでしょう