システム開発 生年月日から年代別の集計をする方法。

システム開発 では、生年月日から年齢が計算できるようになると、いろんな集計に応用できます。

例えば、図書館の貸出履歴と利用者のテーブルから、「年代別貸出数」のような集計を出力することが可能です。

・年代別貸出数
system-34.gif


それでは、生年月日から年代別の集計をするまでの方法を、段階を追って考えてみましょう。

【1】前回、年齢や満年齢を計算で出しました。

system-42.gif

計算に使える関数は、データベースによって異なります。この段階では、詳しい計算式は分からなくてもかまわないので、大まかなイメージだけ掴んでください。

年齢は現在の西暦から、生年月日の年を引けば、簡単に計算できます。

しかし、満年齢を出すには、現在の日付が、「誕生日未満」か「誕生日以降」かまで、考慮する必要がありました。


【2】年齢や満年齢が出せれば、年代を表示することは簡単です。1の位を切り捨てるだけです。

system-40.gif

*10歳未満は 0 とします。


【3】年代が表示できれば、貸出履歴のデータに、利用者の年代を加えて表示することは可能です。

system-41.gif


【4】この段階まで来ると、あとは年代をカウントするだけで、集計することができます。

・年代別貸出数
system-34.gif

*最初の図と同じです


【解説】
利用者テーブルに保存するデータは、「生年月日」だけです。生年月日があれば、いろんな計算ができます。

生年月日 → 年齢(または満年齢) → 年代 → 集計

生年月日から直接年代を計算するのは、難しく感じるので、段階を追って計算しました。

このように、リレーショナルデータベースでは、あるフィールド(列)のデータを加工することで、様々な利用ができるようになります。

どんなデータを保存しておいて、どんな処理(計算)を行なえば、どんな出力(帳票など)が得られるのか、イメージする力が必要になります。

スポンサードリンク

スポンサードリンク






システム開発実践講座 TOPへ