4 返信 最新の回答 日時: Mar 2, 2010 3:50 AM ユーザー:spring

    全テーブルからの検索

    spring

      タイトル

      全テーブルからの検索

      フォーラムに投稿

       fm6です。初心者です。教えてください。

       

      3テーブルあるファイル内で、「名前」というフィールドで、リレーションを持たせています。

       

      1、2、3のテーブルでの「名前」のレコードには、

       

      重複するものもあれば、しないものもあります。

       

      この重複していないレコードも含めた、3テーブル合わせた全レコードから、

       

      検索したいと思っていますが、無理なのでしょうか?

       

      またその場合のよい方法があれば教えてください。

       

      よろしくお願いいたします。

       

       

       

        • 1. Re: 全テーブルからの検索
          Hiro
            

          FM6にテーブルという概念はありません。強いて言えば、1ファイル1テーブルです。

          > 3テーブルあるファイル内で、・・・・・。1、2、3のテーブルでの「名前」のレコードには

          失礼ながら、この説明からは疑問だけでDB構成を掴みかねます。

          • 2. Re: 全テーブルからの検索
            spring
              

            Hiroさん、失礼いたしました。 FM7 でした。

             

            1テーブル 「名前1」  (レコード例:Aさん、Bさん)

            2テーブル 「名前2」  (レコード例:Bさん、Cさん)

            3テーブル 「名前3」  (レコード例:Cさん、Dさん)

             

            と各テーブルに「名前」というフィールドがあり、リレーションを持たせています。

             

            1.2.3の全テーブルのレコードの中から、「名前」フィールドで、検索をしたいのですが、

            可能でしょうか?

             

            今のところ、1テーブルのレイアウトですと、1テーブルのレコード内だけでの

            検索になってしまいます。

             

            1.2.3 全テーブルから検索をしたいのですが、可能でしょうか?

             

            初心者ということもあり、意味不明な質問をしていたら、申し訳ありません。

             

             

            • 3. Re: 全テーブルからの検索
              Hiro
                

              テーブル・オーバーの串刺し検索は出来ません。

              名前で検索などDB操作があるなら、名前マスターテーブルを作り、3つの分割テーブルをこれにインポートして一本化してください。

              また重複レコード(同姓同名があると別対処要す)はインポートの際、ユニークレコードだけに限定インポートが可能です。

              このマスターテーブルで検索します。

               

              また、現状の3テーブル分けの意図は分かりませんが、

              マスターテーブルに詳細データを持たせ、既存3テーブルはそのテーブル分類要素と氏名IDをリレーションキーに、詳細データは名前マスターテーブルから関連レコード参照にすると良いでしょう。

              要は基礎データは1セットだけにし、他で必要な場合はリレーション参照するようにします。これをデータベースの「正規化」といいます。詳しくは「正規化」をキーワードにWebでググってみてください。

              • 4. Re: 全テーブルからの検索
                spring
                  

                 Hiroさん

                 

                教えていただきありがとうございます。

                会社で変更してきました。

                 

                >テーブル・オーバーの串刺し検索は出来ません。

                そうなんですね。納得しました。

                 

                アドバイスいただいた通り、名前マスターテーブルを作成しました。

                 

                インポートについても、教えていただきありがとうございます。

                 

                 

                >また、現状の3テーブル分けの意図は分かりませんが、

                 

                経理部で働いているのですが、今はエクセルオンリーなのです。

                売上&入金を、1か月ごとにシートを増やしていくという方法なのです。

                 

                今、考えているのは、1レコード(売掛先)に対して、1月のテーブルにて、1月の売上、1月の入金

                他15フィールドくらい、2月のテーブルにて、2月の売上、2月の入金…

                 

                と、月ごとのテーブルにわけようかなと思っていて、

                 

                そうしないと、12か月×15フィールド を1テーブルで管理するのって

                混乱しそうで。

                 

                (また変なことを言っていたらすみません)

                 

                「正規化」も調べました。なるほど~と思いました。

                ありがとうございます。

                 

                会社では誰もわからなく、困っていたので、

                本当に心強いです。