|
>希望の結果クエリ
>|会社名 |件数
>|太郎建設|100
>|三郎建設|20
これは、どういうことをやりたいんですか。
SELECT 会社名,件数
FROM 氏名
WHERE ID = 1 OR ID = 4
というクエリを実行すれば、上記の結果になりますが、
「IDが1又は4であるレコード」なんていう抽出条件では、おそらく意味を成しませんよね。
>氏名テーブル
>ID |名前|会社名 |件数
>1 |太郎|太郎建設|100
>2 |二郎|二郎建設|300
>3 |一郎|一郎建設|10
>4 |三郎|三郎建設|20
さらに、氏名テーブルに「件数」フィールドがあるというのは、かなり理解しがたいです。
件数は人の属性である、
つまり、時期がいつであるかにかかわらず、人が決まれば件数が決まる
というものなのであれば、氏名テーブルに件数フィールドを持たせてもいいと思いますが、
おそらく、件数は、人が同じでも、時期が違えば件数が変わるというものなのでしょうから、
件数は、別のテーブルに持たせるべきです。
「テーブルの正規化」ということを考えてみてください。
テーブルが正規化されていないと、無駄に複雑なクエリやVBAを組むことになりますし、
その場合、コンピュータの処理速度も遅くなるし、
BBSで質問しようとしてももなかなか回答がつかないし、
いいことは何もないです。
「テーブルの正規化」についての詳しいことは、ネットで検索してください。
私も正確なところはよくわかっていませんが、
極めて大雑把に言うと、コンピュータにとって使いやすいようにテーブルを分けることです。
そして、正規化されたテーブルは人間にとっては見づらいです。
|
|