2017-11-01 8 views
0

私は最近、FileテーブルとCategoryテーブルがあると聞いたところでインタビューの質問を受けました。ファイル(主キーfile_id)は多くのカテゴリ(主キーcategory_id)を持つことができ、多数のファイルが存在する可能性があります。ただし、それぞれのテーブルには、ファイルのエントリが1つ、カテゴリのエントリが1つだけ存在する必要があります。スキーマを作成します。SQLデータベースに多対多関係を正しく作成するにはどうすればよいですか?

解決策は、file_idとcategory_idの外部キーを使用して接合テーブルを作成することでした。

SELECT * FROM Files JOIN FileCategory USING (file_id) 

この解決策は正しいですかこれについて行くのより良い方法があります:ユーザーは、ファイルのすべてのカテゴリを検索したい場合は、クエリは次のようになりますか?

+0

これは、たとえば、グーグルグーグル、つまりあなたのタイトルでは答えられないのですか? – philipxy

答えて

0

解決策は正しいです。 2つのエンティティ間に多対多の関係を実装する標準的な方法は、2つの参照テーブルのキーで構成される複合主キーを使用して第3のエンティティを作成することです。

関連する問題