Microsoft Access クロス集計クエリでは、1 つだけを指定できます。または、値として計算します。多くの場合、表示する必要があります以上クエリで 1 つの値です。
たとえば、ごとの情報の 2 つの列を次の例を示します会社、発注、および注文の合計がそれぞれの数年:
Company Name 1989 Orders 1989 Total 1990 Orders 1990 Total
--------------------------------------------------------------
ABC Company 12 $855.00 15 $1010.25
XYZ Company 1017 $22045.57 1050 $25345.29
この種のクエリは、複数値フィールド クエリとも呼ばれます。
注: この資料で使用されるテクニックのデモンストレーション アプリ ケーションします。サンプル ファイルで、Qrysmp97.exe。取得する方法についてこのサンプル ファイルは、microsoft の次の資料を参照してくださいナレッジ ベース:
182568
(http://support.microsoft.com/kb/182568/EN-US/
)
[Acc97]: Microsoft Access 97 のサンプル クエリ利用可能なダウンロード センターで
複数値フィールド クロス集計クエリを作成するには、[使用する必要があります。固定列見出しを 2 つの独立したクロス集計クエリを作成します。計算する対象の値。これら 2 つのクエリを結合することができます、選択クエリを使用して、目的の結果を表示するのには。
次の使用例は、Microsoft では、サンプル データベース Northwind.mdb を使用してください。Access 7.0 および Microsoft Access 97 (または NWIND。バージョン 2.0 での MDB または以前) に類似した結果を表示するクエリを作成するのには上記の各年度ごとに売り上げ高の合計数を示す例会社です。
手順 1: 注文合計クロス集計クエリを作成します。
注文合計クロス集計クエリを作成するには、次の手順を実行します。
- 開き、サンプル データベース Northwind.mdb (または NWIND。2.0 またはそれ以前のバージョンの MDB) と、注文に基づいて次のクロス集計クエリを作成します。注文の詳細と顧客のテーブル。
Query: Order Total
------------------
Type: Crosstab Query
Join: Customers.[CustomerID] <-> Orders.[CustomerID]
NOTE: In versions 1.x and 2.0, there is a space in Customer ID.
Join: Orders.[OrderID] <-> Order Details.[OrderID]
NOTE: In versions 1.x and 2.0, there is a space in Order ID.
Field: CompanyName
Table Name: Customers
Total: Group By
Crosstab: Row Heading
NOTE: In versions 1.x and 2.0, there is a space in Company Name.
Field: Expr1: Year([OrderDate]) & " " & "Order Total"
Table Name:
Total: Group By
Crosstab: Column Heading
NOTE: In versions 1.x and 2.0, there is a space in Order Date.
Field: Expr2: Sum(CCur([UnitPrice]*[Quantity]*(1.-[Discount])))
Table Name:
Total: Expression
Crosstab: Value
NOTE: In versions 1.x and 2.0, there is a space in Unit Price.
- 上半分の灰色の領域での任意の場所をクリックして、クエリを選択します。クエリ グリッドの。表示メニューのクエリのプロパティをクリックして、固定列見出しチェック ボックスをオンし、固定列見出しボックスMicrosoft Access のバージョンに適切なエントリを入力します。
Version 1.x: "1989 Order Total";"1990 Order Total";"1991 Order
Total";"1992 Order Total"
Version 2.0: "1991 Order Total";"1992 Order Total";"1993 Order
Total";"1994 Order Total"
Version 7.0: "1993 Order Total";"1994 Order Total";"1995 Order
Total"
Version 97: "1994 Order Total";"1995 Order Total";"1996 Order
Total"
注: 2.0、7.0、97、Microsoft Access のバージョンでは、FixedColumnHeadings プロパティは、列見出しと呼ばれます。
手順 2: 注文数のクロス集計クエリを作成します。
- 注文に基づいて次のクロス集計クエリを作成し、顧客のテーブル:
Query: Order Count
------------------
Type: Crosstab Query
Join: Customers.[CustomerID] <-> Orders.[CustomerID]
NOTE: In versions 1.x and 2.0, there is a space in Customer ID.
Field: CompanyName
Table Name: Customers
Total: Group By
Crosstab: Row Heading
NOTE: In versions 1.x and 2.0, there is a space in Company Name.
Field: Expr1: Year([OrderDate]) & " " & "Order Count"
Table Name:
Total: Group By
Crosstab: Column Heading
NOTE: In versions 1.x and 2.0, there is a space in Order Date.
Field: OrderID
Table Name: Orders
Total: Count
Crosstab: Value
NOTE: In versions 1.x and 2.0, there is a space in Order ID.
- 上半分の灰色の領域での任意の場所をクリックして、クエリを選択します。クエリ グリッドの。表示メニューのクエリのプロパティをクリックして、固定列見出しチェック ボックスをオンし、固定列見出しボックスMicrosoft Access のバージョンに適切なエントリを入力します。
Version 1.x: "1989 Order Count";"1990 Order Count";"1991 Order
Count";"1992 Order Count"
Version 2.0: "1991 Order Count";"1992 Order Count";"1993 Order
Count";"1994 Order Count"
Version 7.0: "1993 Order Count";"1994 Order Count";"1995 Order
Count"
Version 97: "1994 Order Count";"1995 Order Count";"1996 Order
Count"
注: Microsoft Access バージョン 2.0、7.0、97 で、FixedColumnHeadings プロパティは、列見出しと呼ばれます。
手順 3: 複数値クエリを作成します。
- 注文金額合計や注文数クロス集計に基づいて選択クエリを作成します。クエリを実行します。[得意先名] と、注文の合計と順序を使用します。フィールド結果を表示する年をカウントします。使用例以下は、過去 2 年間の注文金額合計や注文数でを使用してください。Microsoft Access 97。
Query: Multiple Values
----------------------
Join: Order Total.[CompanyName] <-> Order Count.[CompanyName]
NOTE: In versions 1.x and 2.0, there is a space in Company Name.
Field: CompanyName
Table Name: Order Count
Show: Yes
Field: 1995 Order Count
Table Name: Order Count
Show: Yes
Field: 1995 Order Total
Table Name: Order Total
Show: Yes
Field: 1996 Order Count
Table Name: Order Count
Show: Yes
Field: 1996 Order Total
Table Name: Order Total
Show: Yes
複数値クエリを実行した結果のように、テーブルには、次の。
Company Name 1995 Order Count 1995 Order Total 1996 Order Count..
--------------------------------------------------------------------------
Alfred's Futterkiste 3 $2,022.50 3
Ana Trujillo 2 $799.75 1
Antonio Moreno 5 $5,960.78 1
注: フィールドを指定した場合は、この方法は使えません、連結 (ステップ One(expr1)) は 2 つ以上のテーブル内のフィールドクエリに結合します。クエリを受け入れるように強制する方法はありませんが予約済みエラー-1310 が発生しなくても、式内のテーブル名です。Ifテーブルの行にテーブル名を追加、構文エラーを生成します。Ifテーブル名は、完全にそれらに、生成、"あいまいな参照"エラーが発生しました。
クロス集計クエリの詳細については、「クロス集計クエリでは、の検索作成、"し、「クロス集計クエリ ウィザードを使用せず作成」を使用してください。Microsoft Access 97 のヘルプ インデックスです。
文書番号: 109939 - 最終更新日: 2011年6月30日 - リビジョン: 4.0
| kbinfo kbmt KB109939 KbMtja |
機械翻訳の免責重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:
109939
(http://support.microsoft.com/kb/109939/en-us/
)
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。
サポート期間が終了した「サポート技術情報」資料に関する免責事項この資料は、マイクロソフトでサポートされていない製品について記述したものです。そのため、この資料は現状ベースで提供されており、今後更新されることはありません。