ACCESSクエリの達人ガイド <集計&データ整理の極意>
[2000/2002/2003/2007対応]
[2000/
2008年5月30日紙版発売
谷尻かおり 著
A5判/352ページ
定価2,728円(本体2,480円+税10%)
ISBN 978-4-7741-3483-3
ただいま弊社在庫はございません。
書籍の概要
この本の概要
データベースを利用するにあたって最も需要があるのは,蓄積されているデータを何らかの意図に沿って引き出すことです。そして,そのためには,多くの場合,クエリで十分に目的を達成できます。実際,そのような,ちょっとした加工・抽出こそが,普通はいちばん利用頻度が高いと言えるでしょう。本書は,実際のケースを各種調査した結果,最も求められている分野と判断された「集計とデータ整理」に関わる実践的なクエリの書き方を特に重点的に解説するものです。コンパクトな解説なのでわかりやすい!
こんな方におすすめ
- Accessに蓄積されているデータを上手に取り出したい方
- アンケート集計の結果をまとめる必要などがある方
- Accessデータの整理を業務としている方
目次
- プログラム入力時の注意点
第1章 クエリの基礎知識
1 クエリの種類
- 1.1 選択クエリ
- 1.2 パラメータクエリ
- 1.3 クロス集計クエリ
- 1.4 重複クエリ
- 1.5 不一致クエリ
- 1.6 オートルックアップクエリ
- 1.7 テーブル作成クエリ
- 1.8 更新クエリ
- 1.9 追加クエリ
- 1.10 削除クエリ
- 1.11 サブクエリ
- 1.12 ユニオンクエリ
- 1.13 データ定義クエリ
- 1.14 パススルークエリ
2 デザインビューでの基本操作
- 2.1 作成から実行までの流れ
- 2.2 クエリにフィールドを追加する
- 2.3 レコードを並べ替えて表示する
- 2.4 抽出条件を設定する
- 2.5 フィールドの表示/非表示を切り替える
- 2.6 フィールド名を変更する
- 2.7 演算フィールドを作成する
- 2.8 独自の関数を使って演算する
- 2.9 集計行を追加する
- 2.10 複数のテーブルを結合する
- 2.11 ?結合テーブル間に対応するレコードがないときに,?どちらか一方のテーブルからレコードを取得する
- 2.12 選択クエリで取得するレコード数を制限する
- 2.13 重複した値を1レコードとして取得する
- 2.14 [固有の値/UniqueValues]プロパティと[固有のレコード/UniqueRecords]プロパティ
- 2.15 クエリの種類を変更する
- 2.16 テーブル作成クエリを作成する
- 2.17 更新クエリを作成する
- 2.18 追加クエリを作成する
- 2.19 削除クエリを作成する
- 2.20 アクションクエリを実行するときの注意点
- 2.21 SQLステートメントを確認する
- 2.22 ユニオンクエリを作成する
3 データベースの演算
- 3.1 必要なフィールドを選択する
- 3.2 必要なレコードを選択する
- 3.3 テーブルを結合する
- 3.4 テーブルどうしの足し算
- 3.5 テーブル間の引き算
- 3.6 テーブル間の交わり
- 3.7 テーブルどうしの掛け算
第2章 データを取得する
1 集合として考えよう
- 1.1 指定した条件を満たしたレコードを取得する
- 1.2 指定した条件を満たしていないレコードを取得する
- 1.3 指定した2つの条件のうち,どちらか一方を満たすレコードを取得する
- 1.4 指定した2つの条件を両方とも満たすレコードを取得する
- 1.5 指定した2つの条件のうち,片方だけを満たすレコードを取得する
- 1.6 図の組み合わせ
2 抽出条件の書き方
- 2.1 比較演算子の使い方
- 2.2 抽出する値の書き方
- 2.3 範囲を指定する
- 2.4 値リストを利用する
- 2.5 文字パターンの比較
- 2.6 特殊文字(*,?)を含んだレコードを取得する
- 2.7 空白のフィールドを取得する
- 2.8 抽出条件をパラメータにする
- 2.9 パラメータのデータ型を定義する
- 2.10 抽出する値が指定されないときは,すべてのレコードを取得する
3 一歩進んだデータ抽出
- 3.1 集計結果を利用してレコードを抽出する
- 3.2 文字列の一部を使ってレコードを抽出する
- 3.3 文字列の長さを利用してレコードを抽出する
- 3.4 抽出する値を別テーブルで定義する--完全一致
- 3.5 抽出する値を別テーブルで定義する--文字パターンの比較
- 3.6 年度の区切りでデータを抽出する
- 3.7 オートナンバー型のフィールドから欠番を抽出する
4 フォーム/レポートを利用する
>- 4.1 抽出結果をフォームに表示する
- 4.2 コントロールの値を使ってデータを取得する
- 4.3 一覧表示したレコードの中から,目的の1レコードを別フォームに表示する
- 4.4 リストボックスまたはコンボボックスの項目を動的に変更する
- 4.5 オプションボタンを使ってYes/No型の値を抽出する
- 4.6 チェックボックスを使ってYes/No型の値を抽出する
- 4.7 日付/時刻型の抽出範囲をオプションボタンで指定する
- 4.8 抽出に使った値をレポートのページヘッダーに出力する
- 4.9 グループごとに並べ替えて出力する
第3章 データを整理する
1 集計の基本
- 1.1 すべてのレコードを使って集計する
- 1.2 Null値を「0」に置き換えてから集計する
- 1.3 グループごとに集計する
- 1.4 文字列の一部を利用してグループ化する
- 1.5 日付の一部を利用してグループ化する
- 1.6 値の範囲を利用してグループ化する
- 1.7 グループごとに集計したときに,集計結果のないグループも表示する
- 1.8 対象のレコードを抽出してから集計する
- 1.9 集計した後に抽出する
- 1.10 累計を表示する
- 1.11 グループごとに累計を表示する
- 1.12 一覧表の最終行に集計結果を出力する
- 1.13 グループの最終行に集計結果を出力する
- 1.14 レポートを利用して,集計結果を最終行に出力する
- 1.15 グループごとに集計結果を出力する
2 クロス集計の基本
- 2.1 クロス集計表とは?
- 2.2 クロス集計表の作り方
- 2.3 集計結果がNullのフィールドに「0」を表示する
- 2.4 列見出しに表示する項目を並べ替える
- 2.5 列見出しに表示する項目を制限する
- 2.6 レコードを抽出してから集計する
3 一歩進んだクロス集計クエリ
- 3.1 抽出する値をパラメータにする
- 3.2 同じグループに所属するレコードを1つにまとめて表示する
- 3.3 列見出しをグループ化して出力する
- 3.4 列見出しの途中に集計結果を表示する
- 3.5 列見出しに複数のフィールドの値を表示する
- 3.6 各行の集計結果を表示した列を使って並べ替える
- 3.7 クロス集計表をレポートに出力する
- 3.8 レポートに出力するときに,列見出しの値を制限する
- 3.9 レポートに出力する列見出しの値を範囲指定する
4 連番/順位/組み合わせ
- 4.1 登録されているレコードに連番を設定する
- 4.2 グループ別に連番を設定する
- 4.3 抽出した結果に連番を設定する
- 4.4 5レコードごとに1,2,3……のようなグループ番号を設定する
- 4.5 5レコードごとにA,B,C……のようなグループ番号を設定する
- 4.6 指定した範囲の連番を作成する
- 4.7 値が小さいレコードから順位を付ける--同一順位があるときは,その値を飛ばす
- 4.8 値が小さいレコードから順位を付ける--同一順位がある場合でも,順位を連番にする
- 4.9 グループ別に順位を付ける--同一順位があるときは,その値を飛ばす
- 4.10 グループ別に順位を付ける--同一順位がある場合でも,順位を連番にする
- 4.11 2番目に大きな値を取得する
- 4.12 グループ内で2番目に大きな値を取得する
- 4.13 最大値を保持するレコードにマークを付ける
- 4.14 グループの中で最大値を保持するレコードにマークを付ける
- 4.15 得点に応じて自動的にランクを設定する
- 4.16 登録されている値から2つを選んで順番に並べる
- 4.17 登録されている値から2つを選ぶ
- 4.18 登録されている値を利用して,すべての組み合わせを作成する
5 重複レコードの扱い
- 5.1 重複したレコードを抽出する
- 5.2 重複したレコードがあるときに,最後に登録したデータを取得する
- 5.3 重複したレコードを削除する
- 5.4 2つのテーブル間で重複したレコードを取得する
- 5.5 2つのテーブル間で重複したレコードを,1行にまとめて表示する
- 5.6 2つのテーブル間で重複したレコードを削除する
- 5.7 2つのテーブルをまとめるときに,レコードが重複しないようにする
- 5.8 2つのテーブルが完全に一致しているかどうかを調べる
- 5.9 重複する値を非表示にする
第4章 具体例で見るデータ整理
1 アンケート集計
- 1.1 アンケートの内容とテーブル一覧
- 1.2 全体の回答数を調べる
- 1.3 性別ごとに回答数を調べる
- 1.4 男女の比率を調べる
- 1.5 性別ごとに年齢層を分析する
- 1.6 性別と年齢を行見出しに,その他の設問を列見出しに配置したクロス集計表を作成する
- 1.7 複数回答が可能な項目で得票順に一覧を作成する
- 1.8 複数回答が可能な項目で,その項目を選択した男女の比率を分析する
- 1.9 単純集計の結果を円グラフで表示する
- 1.10 クロス集計の結果を棒グラフで表示する--[性別]×[年齢]
- 1.11 クロス集計の結果を棒グラフで表示する--[性別]×[複数回答]
- 1.12 集計結果と百分率を同じ表に出力する
2 ポイント管理
- 2.1 ポイント規約とテーブル一覧
- 2.2 購入金額に応じたポイントを計算する
- 2.3 現在のポイントを確認する
- 2.4 最短で無効になるポイントを調べる
- 2.5 ポイントの履歴を表示する
- 2.6 ポイントの累計を表示する
- 2.7 もっと簡単にポイントの累計を表示する
- 2.8 ポイント入力用の画面を作成する
- 2.9 レシートを発行する
3 予約表
- 3.1 予約を管理するテーブル
- 3.2 1週間分の予約台帳を作成する
- 3.3 指定した日付から1週間分の予約台帳を作成する
- 3.4 予約台帳をフォームに表示する
- 3.5 予約台帳を見ながら登録できるようにする
- 3.6 会議室を指定して予約できるようにする
- 3.7 1つの時間帯に3人まで予約できるようにする
第5章 データを変換する
1 演算フィールドを作成する
- 1.1 フィールド内の文字数を調べる
- 1.2 文字列の一部を取得する
- 1.3 カンマまたは空白で区切られた文字列を2つのフィールドに分割する
- 1.4 複数のフィールドに分かれた文字列を1つのフィールドにまとめる
- 1.5 IIf関数を利用して,フィールドの値を別の値に変換する
- 1.6 Switch関数を利用して,フィールドの値を別の値に変換する
- 1.7 文字列の中から数値データを取得する
- 1.8 絶対値を取得する
- 1.9 小数点以下の値を切り捨てる
- 1.10 小数点以下の値を四捨五入する
- 1.11 数値の足りない桁を0で埋める
- 1.12 日付の一部を取得する
- 1.13 年,月,日に分かれたデータから日付を取得する
- 1.14 日付から和暦の年を取得する
- 1.15 文字列で登録された和暦の年を西暦に変換する
- 1.16 日付から年度を取得する
- 1.17 日付から曜日を取得する
- 1.18 日付から月末日を取得する
- 1.19 10日後の日付を取得する
- 1.20 生年月日と今日の日付から満年齢を求める
- 1.21 生年月日と今日の日付から年齢を取得して,「○歳○ヶ月」という書式で表示する
- 1.22 出社時刻と退社時刻から勤務時間を取得して,「○:○」という書式で表示する
- 1.23 休憩時間を除いた勤務時間を取得する
- 1.24 文字列として登録された日付を日付/時刻型の値に変換する
- 1.25 ドット(.)で区切られた日付を日付/時刻型の値に変換する
- 1.26 数値として登録された日付を日付/時刻型の値に変換する
- 1.27 式に使ったフィールドにNull値があるとき
- 1.28 演算フィールドの結果をテーブルに保存する
2 フィールドの値を更新する
- 2.1 文字列の前後に含まれる空白を削除する
- 2.2 文字列中に含まれるすべての空白を削除する
- 2.3 全角と半角が混在するデータを全角に統一する
- 2.4 ひらがなとカタカナが混在するデータを半角カタカナに統一する
- 2.5 Yes/No型のチェックを解除する
- 2.6 Yes/No型のチェックを反転する
- 2.7 フィールドの内容を削除する
3 一歩進んだデータ変換
- 3.1 他テーブルを利用してテキスト型フィールドの値を更新する
- 3.2 文字列の一部を新しい値に置換する
- 3.3 テキスト型フィールドの値を他テーブルとの外部キーに変換する
- 3.4 Yes/No型フィールドの値をテキスト型に変換する
- 3.5 フォームでマークを付けたレコードを削除する
第6章 SQLステートメントを読む
1 選択クエリ
- 1.1 レコードを取得する
- 1.2 フィールドに別名を付ける
- 1.3 演算フィールドを作成する
- 1.4 複数のテーブルを結合する--内部結合
- 1.5 複数のテーブルを結合する--外部結合
- 1.6 抽出条件を設定する
- 1.7 パラメータクエリを作成する
- 1.8 レコードを並べ替える
- 1.9 結果セットに含めるレコード数を制限する
- 1.10 重複した値を1レコードとして取得する
- 1.11 すべてのレコードを使って集計する
- 1.12 グループごとに集計する
- 1.13 グループ化する前にレコードを抽出する
- 1.14 グループ化した結果から表示するレコードを抽出する
- 1.15 クロス集計表を作成する
2 アクションクエリ
- 2.1 既存テーブルのコピーを作成する
- 2.2 テーブルに登録されているデータを更新する
- 2.3 テーブルAのデータをテーブルBに追加する
- 2.4 テーブルに1レコードを追加する
- 2.5 テーブルに登録されているデータを削除する
- リストを理解するためのポイント
この本に関連する書籍
-
[改訂新版]これだけはおさえたい データベース 基礎の基礎
データベースは,現在,ネットワークと並んでIT関係者には必須の知識となっています。鉄道などの予約システム,物販システム,管理システムなどなど,どのようなシステ...
-
使いやすさを決める!Access2007フォーム作成ガイド
AccessはGUIの操作を主体としたデータベースシステムです。使い勝手のよいAccessアプリケーションを開発するためには,データベースの設計だけでなく,操作性の要である...
-
[Access 2000/2002/2003/2007対応] ACCESS VBA[実践]プログラミングテクニック ――応用できる基本の書き方
ACCESS VBAでプログラミングをするにあたって,どういうときにはどのようなコードを書けばよいかを目的別に指南する本です。急いでいるときに最初から勉強するのは大変...
-
Access2003 クエリ+レポート活用術
本書は,データベースから必要なデータを抽出したり,抽出したデータを印刷したりするために必要な知識と操作方法を,やさしくていねいに解説しています。Excelで作成し...
-
Excel+Access[2000/2002/2003対応]データベース完全活用ガイド
最もメジャーな表計算ソフトExcelは,いろいろな用途で使われています。本来の表計算に用いられるのはもちろんのこと,意外にもデータベースとして使われていることも少...