MySQLを使った検索、抽出操作

前回はPDOで操作する場合、必ず使う4つの書式について入門用(自分用)メモをまとめました。
今回は、SQL文について、同様にまとめます。



テーブル名から、全てのフィールド名を対象に、データを抽出

SELECT * FROM テーブル名;

テーブル名から、全てのフィールド名を対象に、指定した件数の、データを抽出

SELECT * FROM テーブル名 LIMIT 件数;

LIMIT 10とした場合、最初の10件。
LIMIT 0, 10とした場合も、最初の10件。
LIMIT 10, 10とした場合、11件目から20件目。


テーブル名から、全てのフィールド名を対象に、条件式に該当する、データを抽出

SELECT * FROM テーブル名 WHERE 条件式;

条件式には、id=999のように、フィールド名と演算子の組み合わせ等で書く。


テーブル名から、全てのフィールド名を対象に、条件式に該当する、データを抽出し、フィールド名でソート

SELECT * FROM テーブル名 WHERE 条件式 ORDER BY フィールド名;

逆順にする場合は、ORDER BY フィールド名 DESC


テーブル名から、抽出するフィールド名を指定して、データを抽出

SELECT フィールド名 FROM テーブル名;

テーブル名から、全てのフィールド名を対象に、データを抽出し、件数を表示

SELECT COUNT(*) FROM テーブル名;

参考記事

以下の2つの記事が具体的でわかりやすかったです。
実際のテーブルを対象にSQL文が書かれ、結果もあわせて書いてあるのがいいですね。


参考にさせていただきました。


▽サカイ先生のMySQL講座(PHPプロ!)
 http://www.phppro.jp/school/mysq/
※本件については第9回、第10回


MySQL - SELECTでデータを抽出(気まぐれソフトハウス
 http://wind-master.dip.jp/soft-info/item/20/catid/4