データベースの中身を全て確認したいときに用いられる、標準的なデータ取得SQLです。
1. SQLの構造
ここではふたつの「句」が登場している。
SELECT 句 (SELECT M_配信リスト.*)
役割:どの列(フィールド)のデータを取得するかを指定
詳細:
テーブル名「M_配信リスト」
末尾の *(アスタリスク)は「すべての列」を意味し、「M_配信リスト」テーブルにあるすべての項目を取得できる。
ただし、SQLの文法上、テーブル名やアスタリスクは独立した単語(トークン)として扱われ、それらを結びつける「ドット(演算子)」が必須とする取扱いが、リレーショナルデータベース業界の共通ルール。
小さくて見つけにくいが、テーブル名と *(アスタリスク)の間には「.(ドット)」がちょこんと入る。
この場合の「.(ドット)」は、「〜の」や「〜に属する」を意味する修飾子(クオリファイア)の働きをする。
これを省略するとAccessはSQLの指示内容を読み取ることができず、「演算子エラー」となり、クエリ実行は中止される。
FROM 句 (FROM M_配信リスト;)
役割:データの取得元となるテーブルを指定
詳細:「M_配信リスト」テーブルからデータを取るように指定。末尾の ;(セミコロン)は、SQL文の終わりを示す。
2. 本SQLの役割
「M_配信リスト」テーブルに格納されたすべてのレコード(行)と、すべての項目(列)を抽出して表示
補足:「列」の呼び方について
Accessの設計画面やMicrosoft公式ヘルプなどでは、伝統的に「フィールド」という言葉が使われる。
MySQLやPostgreSQL、Oracleなど一般的なSQL・他種データベースの文脈では「カラム」という呼称が主流。
また、Accessにおいても、コンボボックス設計時にはcolumn関数(プロパティ)が用いられる。
「フィールド」はデータベースの構造(入れ物)を指す際に使われ、「カラム(Column)」は画面上のコントロール(表示形式)や内部SQLの概念を指す際に使われると、分けて考えると理解しやすい。
基本のSQLでデータを取得し、それをColumnで制御するというのが、Accessの伝統的な手法であり、試験では問われやすい。
操作手順:
選択クエリ画面にテーブルを置き、
*(アスタリスク)をダブルクリックする。
あるいは
*(アスタリスク)をフィールドグリッドにドラッグする。
↓
データシートビューでクエリ実行結果を確認する。
※「!(実行)」ボタンは不要。
*(アスタリスク)にて全フィールド取得を行った場合のSQL
3.「M_配信リスト」テーブルの各フィールドを個別に配備した場合のSQL
SELECT M_配信リスト.話数, M_配信リスト.[タイトル], M_配信リスト.放送日, M_配信リスト.Season, M_配信リスト.ImagePath
FROM M_配信リスト;