0

私は、MS ACCESS でアプリケーション データベースを考案する任務を負っています。私のデータベースには 5 つのテーブルがあります。

  • 主人
  • 現金
  • 小切手
  • 詳細
  • 月(年の月を表示)

ここでは、Master を親レコードとして作成し、他の 3 つの Cash、Check、および Detail を Master テーブルの子にしています。

マスターテーブルのフィールドは次のとおりです

   Lt no   Name  Regfee  AssessmentYear  April May June .......... March 

最後の 12 フィールドは、値として金額を取る財務の月です。

これらの値は、クエリを使用して小切手/現金テーブルから入力する必要があります。

 
 小切手
   LTno **month** chqueno date bank **amount** はフィールドです。

このチェック テーブルでは、特定の月の金額が対応する月のマスター テーブルに入力されます。どのようなクエリを作成しますか。

貴重なご提案をお待ちしております。

4

2 に答える 2

3

データベースは正規化されていないため、テーブルを更新するには非常に複雑なクエリを作成する必要があります。ほとんど同じように見える 12 回の更新を行うか、ほぼ同じことを 12 回実行する巨大なクエリを作成する必要があります。

月の値をマスター テーブルから別のテーブルに移動して、月がフィールド名ではなくテーブル内のフィールドになっている方がよいでしょう。次に、レコードを簡単に追加できます。

insert into MasterMonths (LTno, month, value)
select LTno, month, sum(amount)
from cheque
group by LTno, month
于 2009-10-10T13:09:36.083 に答える
0

小切手だけでなく、クレジットカードの伝票、現金の購入も含めることを除いて、私は同様のことをします。それは基本的な簿記です。

さまざまな理由から、日付ごとに1行(レコード)の「アルマナック」というテーブルを選択しました。曜日、月などの列(フィールド)があります。このテーブルに、VBで記述された小さなコードフラグメントを入力します。10年分の日付があっても、テーブルには約3,653行しかありません。次に、このテーブルで単純な結合を使用して、トランザクションデータを月ごとに要約されたデータに減らします。他の方法で要約することもできます。

クエリは非常に簡単なので、グラフィカルクエリインターフェイスを使用して実行しました。ただし、私の要約には、あなたの行の12倍の行があり、各行には1か月しかありません。

マスターテーブルの形式でデータをレイアウトする場合は、MSAccessのクロス集計クエリツールまたはMSExcelのピボットテーブルツールの2つのツールのいずれかを使用します。どちらも非常に強力ですが、ピボットツールの方が柔軟性があります。Excelからデータベースデータをクエリするには、ExcelにMSクエリと呼ばれるアドインをインストールする必要がありました。それは私が使用しているバージョンの機能かもしれません。

これはフレームワークとは大きく異なり、使用するかどうかはあなたの選択です。それは私にとってうまくいきました。

于 2009-10-11T12:18:58.037 に答える