[PR]100万円が無料で当たる!:今すぐ応募して現金を当てよう!


ニュースリリース?

表計算とデーターベース

 表計算もデーターベースも表を使ってデーターを整理していくという点では同じですが、その際の発想が違うように思います。データーベースについては、テーブルの正規化という考え方があり、本格的にやりたい人はそちらを勉強していただくとして、ここでは簡単に「データーベースではデーターを縦に並べよう。」という考え方を書いておきます。

 例えば、ある野球チームの選手のホームラン数を記録していく場合、表の形にして下さいというとどうするでしょうか?

 普通の感覚ではこんな感じですね。

  1978年 1979年 1980年 1981年
野村克也 3 5 4  
王貞治 39 33 30  
山本浩二 44 42 44 43
門田博光 15 2 41 44
落合博満   2 15 33

 表計算だと、それぞれの欄の一番右側に合計欄を作って合計のホームラン数を出すというところでしょうか。

 これに対してデーターベースソフトは違います。こんな感じでデーターを並べます。

野村克也 1979年 3
野村克也 1980年 5
野村克也 1981年 4
王貞治 1979年 39
王貞治 1980年 33
王貞治 1981年 30
山本浩二 1979年 44
山本浩二 1980年 42
山本浩二 1981年 44
山本浩二 1982年 43
門田博光 1979年 15
門田博光 1980年 2
門田博光 1981年 41
門田博光 1982年 44
落合博満 1980年 2
落合博満 1981年 15
落合博満 1982年 33

 つまり、同じ種類のデーター(この場合だと選手名、年、ホームラン数)は縦に並べる。これがデーターベースの基本だと考えたらいいかと思います。最近は表計算もデーターベースも多機能化していてどちらを使っても同じようなことが出来ますが、基本は表計算は表で計算する("spreadsheet"の訳語が「表計算」ってほんとに良く出来ているよなぁと思います)のが仕事で、データーベースはデータをどんどんため込んでいってあとから高速に検索するのが仕事です。データーを高速で検索するためには、縦に並べておかなければなりません。縦に並べたり横に並べたりすると、検索の際のコンピューターの計算処理が複雑になるからです。

 じゃあデーターベースソフトで各選手のホームランの合計数を出せないんじゃないかというとそんなことはありません。とにかくデーターの検索に関してはものすごく速いわけですから、データーベースソフトに「○○という名の選手のデーターをすべて出せ」という命令を出し、それによって抽出されたデーターを足し算させればいいわけです。

 例えばこんな感じですね。たいていのデーターベースソフトは、元々の「縦に並んだ」データーを抽出した後の後処理を簡単にするための仕組みを備えています。

 この「仕組み」についてはまたいずれ。

 ロータスアプローチ付属の住所録の「子名」が横に並んでいるのは困ったもんだ。データーベースなら縦、じゃないと…。


一行目に戻る
更新日 : 2009/03/02

[PR]≪看護師≫の専門求人サイト♪:週3日・長期で探す『医療介護ワークス』