No.3ベストアンサー
- 回答日時:
この内容からだけでは、良いとも悪いとも言えません。
というのは、項目A~Hの関係が分からないからです。例えば、[氏名コード]、[名前]、[生年月日]、[性別]など、関連性があれば同じテーブルに含めて問題ありません。
ただ、[氏名コード],[名前],[生年月日],[性別],[所属部署コード],[所属部署名]などを同じテーブルにまとめるのは良い設計ではありません。
この場合、[氏名コード]をキーとするテーブル(氏名コード、名前、生年月日、性別、所属部署コード)、[所属部署コード]をキーとするテーブル(所属部署コード、所属部署名)の2テーブルを作成し、[所属部署コード]で2つのテーブルを関連づけます。
テーブルの設計では、正規化(項目の整理)がよく行われます。第1~第5正規化、ボイスコッド正規化など多数の正規化が存在しますが、実際のシステムでは第3正規形か、第2正規形がよく利用されます。(第3正規形あたりが理想的ですが、パフォーマンスを重視しないといけないシステムでは、やむを得ず第2正規形を使用したり)
正規化するメリットは、データの整合性が保ちやすい。(Aさんの名前が変わったとき、たくさんのテーブルにAさんの名前が入っていた場合、全ての名前を変更する必要がある)
正規化しないメリットは、パフォーマンスが良い。データを簡単に取得できる…などがあります。
No.2
- 回答日時:
それぞれのデータ項目の性質にもよるので、一概には回答できないのですが、
Webで「データベース 正規化」等で検索すると、さまざまなレクチャーがされています。
その中には、データサンプル等も示されてますので、そちらを参考にされるとよいと思います。
メリット、デメリットについても書かれていますよ。
(データの物理的なこと、整合性・パフォーマンスなど)
http://www.google.co.jp/search?q=%E3%83%87%E3%83 …
No.1
- 回答日時:
通常は一緒に作っておいて、ビューで分けるかSQLで分ける場合が多いですね。
メリット/デメリットは表裏一体です。同じテーブルにしておいた場合ですが
[メリット]
データの同期を取る必要がなく、データの整合性に問題が無い
[デメリット]
データの更新などでロックが掛かった場合、ロックの方法によっては他方も参照ができなくなる事がある(性能面でも有利?)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- MySQL 複数DBテーブルからのデータ取得 3 2022/05/17 15:02
- MySQL 【投稿情報用データベース posts】は必要ないと思います。 1 2022/06/02 21:25
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Excel(エクセル) Excelでデータを抽出するに良い方法 9 2023/02/06 12:42
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(プログラミング・Web制作) python 3.10で 同じlistに同じ構文で同じデータ代入した結果が異なる現象発生 7 2022/06/18 11:08
- その他(データベース) IT用語について質問です。 以前ITパスポートの試験を受けた際にデータベースが何の集まりかについての 2 2022/12/10 12:29
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- システム 帳票出力を行う単体テストのテストデータが作成できません 2 2023/08/26 21:26
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
Inner join と Left joinの明...
-
重複するキーから一番古い年月...
-
請求と入金のテーブルの作成の...
-
場合によって条件を変えるSQL
-
下記のsqlで取得されるレコード...
-
SQL 2つのテーブルとSUBSTRING...
-
履歴を管理するテーブル構造に...
-
PLSQLの識別子エラー
-
社内コードをソースコードに直...
-
3つのテーブルから条件に一致し...
-
片方だけ抽出する方法(SQL)
-
データの二重表示の原因
-
Access VBA [リモートサーバー...
-
SQL 件数取得を速くしたい
-
SELECT時の行ロックの必要性に...
-
ACCESSのSQLで、NULLかNULLでな...
-
accessのエクスポートエラーに...
-
Accessでの禁止文字チェック
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
重複するキーから一番古い年月...
-
ACCESS 一つのフィールドに複...
-
PLSQLの識別子エラー
-
主キーの変更
-
Accessでフィールドを比較した...
-
SQL 2つのテーブルとSUBSTRING...
-
続.ORACLEのSELECTのソートに...
-
行方向のデータを横に並べる
-
下記のsqlで取得されるレコード...
-
VIEWでテーブルの集計結果...
-
update文で質問です。 下記の条...
-
[Oracle] UPDATE分の副問い合わ...
-
自分自身への矢印
-
片方だけ抽出する方法(SQL)
-
Accessユニオンクエリーで2つ...
-
連番のMin, Maxを取得したい
-
Inner join と Left joinの明...
-
日付の最大値を検索条件にする方法
おすすめ情報