●クエリ・・データベースに対する命令のこと。データベースからデータを取得するために必要。
●テーブルの作成・・CREATE TABLEとしてテーブルの名前をつける(命令の区切りはセミコロン)
●DESC テーブル名 とすると、テーブルの構造を確認することができて、 SHOW TABLES; とするとテーブルの一覧を確認することができる
●テーブルの削除・・DROP TABLE.(if exists)*一度テーブルを作成して再度実行するとエラーになる。そのため削除して新しくテーブルを作る
●テーブルの挿入・・INSERT INTO
●データ型・・整数:INT,TinYINT,BIGINT 実数:DECIMAL,FlOAT,
●特定の文字列の中から一つだけ格納できるENUM というデータ型。複数格納したいならSET(データを挿入する際にはカンマ区切りで値を渡す。カンマ以外に空白などを入れてはいけない)
●値の範囲に制限をつける UNIQUE
●主キーを設定する・・・PRIMARY KEY という指定をすることで、 id をこのテーブルのプライマリーキーつまり、主キーにすることができる
●データの抽出・・・SELECT * FROM レコード名 とすると、全てのレコードを抽出しなさいという意味。
●データの条件指定・・・「WHERE」が意味するのは、「どこのレコード(横の行)を取得するか
●データ取得の最大値・・最大で何件取得するか」を指定するためには、「制限する」という意味の「LIMIT」を用いる
●複数の条件を組み合わせる(WHERE)
AND
BETWEEN
OR
IN
・AND演算子を使うと、WHEREに複数の条件を指定することができる
●文字列の抽出・・
%
LIKE
BINARY
_
%
_
・ある文字を含むデータ」を取得したい場合は、「〜のような」という意味を持つ、「LIKE演算子
●文字列に関する関数・・SUBSTRING()・文字列の一部を切り出す関数
●ORDER BYでは「昇順」は「ASC」、「降順」は「DESC」と指定
●重複データの削除・・DISTINCTを用いると、検索結果から重複するデータを除くことができる
●合計はsum,平均はAVG,指定したカラムのデータの合計数はcount,最大最小はMAX,MIN
●データのグループ化はGROUP BYを用いる。*GROUP BYの注意点 GROUP BYを用いる場合、SELECTで使えるのは、GROUP BYに指定しているカラム名と、集計関数のみ。
●データの絞り込み・・GROUP BYでグループ化したデータを更に絞り込みたい場合には、HAVINGを用いる
●実行順序によって、WHEREとHAVINGは検索対象に違いがある。WHEREはグループ化される前のテーブル全体を検索対象とするのに対し、HAVINGはGROUP BYによってグループ化されたデータを検索対象とする。
●サブクエリとは SQLでは、クエリの中に他のクエリを入れることができる。この他のクエリをサブクエリという。
●AS・・ASを使うことでカラム名などに別名を定義することができる。「カラム名 AS "名前"」で、カラム名に定義する名前を指定
●JOINは複数のテーブルを1つに結合したいときに使う。ONで条件を指定。結合条件は、「ON テーブル名.カラム名 = テーブル名.カラム名」で指定
●記述順序
WHERE句 … 条件を指定してレコードを絞る
GROUP BY句 … 指定した属性でレコードをグループ化する
HAVING句 … 条件を指定してグループを絞る
ORDER BY句 … レコードの表示順を指定する
●LEFT JOINを使うことで、FROMで指定したテーブルのレコードを全て取得する。外部キーがNULLのレコードもNULLのまま実行結果に表示される。