なぜAccessなどのデータベースソフトが必要とされるのか

リレーショナルデータベース(RDB)とはどんなイメージか?

「Accessとは」の項目で引用した文章の中に、Accessは「リレーショナルデータベース」とあります。「RDB」とも言うのですが、これってどんなものなのでしょうか。

 

自分もちょっとデータベースについての本は読んできた経験はあるのですが、この部分が今までは何となくイメージが出来ませんでした。

 

「リレーショナル」というぐらいなので関連付けるというのはわかります。「なぜデータベースソフトが必要とされるのか」でも自分の考えは書いたので「なぜ関連付ける必要があるのか」というのはわかります。

 

巨大すぎる表は使う時に何かと不都合がある、そのため小さく分けた方がいいと。分けた表をそのままにしたら、ただのバラバラの表になってしまうので表ごとデータごとに対応付けられる「キー」で関連付ける必要があります。

 

でも「どうやって」という部分が自分の中で曖昧でした。データベースの教科書などには「正規化」などの言葉が出てきますが、そのようなデータベース専用の言葉ではなく、別の言葉やエクセルで使われる言葉で説明されているものはないものでしょうか。

 

そうやって、以前データベースについてインターネットでいろいろと調べていたら、次のようにわかりやすく書かれたサイトを見つけましたので引用してみます。

最後に、AccessとExcelの違いに関する「ちょっとしたテクニック」を紹介しましょう。Excelで表を作成するとき、「複数の表」から「1つの表」を作成する場合があります。

 

たとえば、「一方の表にある商品コード」に該当する商品データを「もう一方の表にある商品一覧データ」からVLOOKUP関数を使用して取り出す、といった処理です。商品コードを介して、2つの表を「結合」するわけですね。結合してデータがそろうと、計算できる内容も増えてきます。

(中略)

Accessの選択クエリを活用すれば、こういった表の結合が、簡単操作で処理できます。まず、Excelの表に合わせて複数のテーブルを作成し、Excelのデータを貼り付けます(数式や関数が入力されていたセルは「計算結果」が「値貼り付け」で貼り付けられます)。

 

作成したテーブルから選択クエリを作成し、関連付けたい列をつなげて、取り出したい項目を指定します。こうして作成した選択クエリを実行するだけで、VLOOKUP関数による表結合と同じ処理結果を得ることができます。

この文章を初めて見た時思わず「あぁ、なるほど」と理解できました。

 

データベースの表における関連付けは、エクセルにおける「VLOOKUP関数」をイメージするといいんですね。これはわかりやすいと思いました。

 

エクセルにおけるVLOOKUP関数を使う場合、引数は次のようになります。

  • 検索値
  • 範囲
  • 列番号
  • 検索方法

キーにしたい「検索値」を選択し、キーに対応する別の表から必要な「範囲」を選択、別の表のキーを軸として選択した範囲で左から何列目かの「列番号」を入力して、近似値か完全一致かの「検索方法」を指定する、というものです。

 

Accessでは、これがもっと簡単に大規模に視覚的にできるということでしょう。なるほど、勉強になります。

まとめ

以前からデータベースとかAccessといったものは、いつかは勉強しなければいけないのだろうなぁと漠然と考えていました。考えていただけで今まで特に勉強してはこなかったわけですが。

 

多少はデータベースに関する本を読んではいたのですが続きませんでした。それはたぶん、データベースを勉強する「理由」とか「必要性」が明確に理解できていなかったからだと思います。

 

それに今まで10社近い会社で働いてきましたが、Accessを使っている所がほとんどなかったというのもあるでしょう。自分が気づいていなかっただけかもしれませんが。

 

このブログでは以下のような過去記事を書いてきているのですが、やはり周りの人とか自分がいる環境で英語が当たり前に使われているのと同じようにAccessを使う環境が当たり前でないと、その必要性というものを「意識できない」のかもしれません。

 

以下の過去記事では人工知能の進化の背景のひとつには、増加し続ける「データ」が関わっているといったことを書きました。

 

これは本当に偶然なのですが、「増加するデータの解析の必要性」により人工知能が進化していっている、という点からデータベースについてピンときたというか、やはり何事もいろいろと勉強してみるものだなぁと思いました。

あわせて読みたい

こんな記事も読まれています

コメント