データベースでのデータの操作

はじめに

今回はデータベースでのデータの操作についてアウトプットしていこうと思います!

SQLによるデータの操作

データを操作する場合にはDMLを使います!

DML

DMLとは、データを操作するSQLです!

以下のような命令文があります!

  • データの登録をするINSERT
  • データの更新をするUPDATE
  • データの削除をするDELETE
  • データの検索をするSELECT

SELECT

SELECTとは、データを取得する際に使用するSQL句です!

取得するカラムを指定する際は以下のような記述をします!

mysql> SELECT 《カラム名》 FROM 《テーブル名》

また、テーブルに登録されている全てのカラムのデータを取得する時には以下のように記述をします!

mysql> SELECT * FROM 《テーブル名》

*はワイルドカードと言います!

ワイルドカード

ワイルドカードは全てのパターンにまっいするものという意味をもち、文字の代わりとして使うことができる特殊な記号の一つです!

SELECTでは*は全てのカラムというワイルドカードとして定義されています!

INSERT

INSERTは、テーブルにデータを登録するためのSQL文です!

INTOというくと組み合わせてINSERT INTOとして使用します!

また、実際に設定する値は、VALUESという句の後に入力します!

以下のように記述します!

全てのカラムに値を入れる時
mysql> INSERT INTO 《テーブル名》 VALUES(値1, 値2, 値3);
特定のカラムのみに値を入れる場合
mysql> INSERT INTO テーブル名(カラム名1, カラム名2) VALUES(値1, 値2);

データの更新

UPDATE

UPDATEは、データを更新する時に使うSQLの句です!

使用する際には、テーブル名を指定し、SETという句の後に変更内容、WHEREという句の後に条件を指定します!

以下のような記述をします!

mysql> UPDATE 《テーブル名》 SET 《変更内容》 WHERE 《条件》;

データの削除

DELETE

DELETEは、データの削除に使うSQLの句です!

これは、テーブル名を指定するためにFROMと、条件を指定するためにWHEREを併せて使用します!

以下のように記述します!

mysql> DELETE FROM 《テーブル名》 WHERE 《条件》;

Sequel ProからSQL文を実行するメリット

これのメリットは以下のようなことが挙げられます!

  • 検索は長いSQL文を要するが、タイプミスをした時にその場所だけを直せば再実行できる
  • 検索は場合によって非常に多くの出力を伴うが、実行したSQL文が流れてしまうことがないため見やすい
  • SQL文の実行に末尾に;をつけなくてもいい

データの検索

WHERE

WHEREは取得できるデータを条件によって制限できる句です!

WHERE句では、取得するレコードの条件を指定し、その条件が正のレコードを取得します!

記述は以下のようになります!

WHERE 《条件》

例としてはこんな感じです!

WHERE id = 1 
WHERE last_name = "阿部" 
WHERE id <= 5

このように比較演算子でも使えます!

LIKE

LIKEとは、WHERE句と併用して使うことで文字列検索を行うことができる句です!

以下のように記述します!

WHERE 《列名》 LIKE '検索文字'

曖昧検索として%というワイルドカードも使用できます。

AND演算子

AND演算子とは、複数の条件を指定して式を作り、その条件が全て正である時、式が正になります!

以下のような記述になります!

WHERE 《a》 AND 《b》

OR演算子

OR演算子とは複数の条件を指定して式を作り、その条件のうちどれか1つ以上で正であれば、式は正になります!

以下のような記述になります!

WHERE 《a》 OR 《b》

NOT演算子

NOT演算子とは、1つの条件を指定して式を作り、その条件に当てはまらないものを取得します!

以下のような記述になります!

WHERE NOT 《a》

BETWEEN演算子

BETWEEN演算子とは、1つのカラムに対して上限と下限を指定して式を作り、カラムの値がその範囲含まれる時に、その式は正になるという演算子です!

以下のような記述になります!

WHERE 《カラム名》 BETWEEN 《下限》 AND 《上限》

IN演算子

IN演算子とは、1つのカラムに対してリストを指定して、カラムの値がそのリストに含まれす時、その式は正となる演算子のことです!

以下のような記述にあります!

WHERE 《カラム名》 IN (値1, 値2, ……)

複雑なデータの取得

JOIN

JOINを使用すると、指定したカラムに登録された値が一致するデータを元に各テーブルのレコードを結合できます!

記述はこんな感じです!

FROM 《テーブル名1》 
JOIN 《テーブル名2》 ON 《テーブル名1.カラム名1》 = 《テーブル名2.カラム名2》

CONCAT

CONCATとは、複数の文字列を連結できる句です!

以下のような記述になります!

CONCAT(文字列1, 文字列2, ……)

GROUP BY

GROUP BYとは、ある特定のデータごとに、平均値や総量などを集計するときに用いる句です。この時に、ある特定のデータをグループ化すると言います!

GROUP BY カラム名

COUNT

COUNTは、グループ化されたデータに対して使用できる、データの総量をカウントするための句です。カラムを指定することで、そのカラムのデータの行数を取得できます!

SELECT COUNT(カラム名)

サブクリエ

サブクエリとは、ある検索結果を使用して、別のSQL文を実行する仕組みのことです!

星野涼太
ルアー釣りを本格的に初めて4年目です!世界各国の魚を釣ることを目標に釣りをしています!その時得られた情報をこのブログできょう共有しています!
ryota hoshinoをフォローする
未分類
スポンサーリンク
ryota hoshinoをフォローする
hoshino9796
ryota hoshinoをフォローする
駆け出しSEの釣り日記

コメント

タイトルとURLをコピーしました