問題タブ [junction-table]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1519 参照

.net - ジャンクション テーブルをクエリする方法

Entity Framework/LINQ を使用して、次のことについて助けが必要です。

データベースには、PersonId の ID 列を持つ People のテーブルがあります。SkillId の ID 列を持つ Skills テーブルもあります。これら 2 つは、独自の ID 列 PeopleSkillsId、PersonId を参照する外部列、および SkillId を参照する外部列を持つ 3 番目のテーブル PeopleSkills を介して接続されます。

私が書こうとしているメソッドには、探している任意の数のスキルを含む List 型のパラメーターが渡されます。このメソッドは、入力パラメーター リスト内のすべてのスキルにリンクされているリストを返す必要があります。スキル リストのすべてのスキルを持たないユーザーを除外するリストを作成するにはどうすればよいですか?

私が抱えている問題は、SQL の経験がほとんどないことです。他にもたくさんのプログラミング経験がありますが、SQL はいつも私にとって少し大雑把です。Join を使用することを考えましたが、うまくいきません。つまり、私の人がスキル A と B を持っていて、検索リストに B と C の要素がある場合、結合は B でそれらに一致し、人を返します。この人は B と C の両方を持っていないので、除外する必要があります。

スキル リストを反復処理してフィルターを構築することも考えましたが、それは見苦しく思えます。これは、List を使用して別の List を照会するために LINQ が処理するように構築された問題のように思われ、エレガントな解決策があるはずです。

0 投票する
2 に答える
259 参照

wpf - WPFを使用してジャンクションテーブルをマトリックスで表示するにはどうすればよいですか?

私は2つの列挙型を持っています:

および両方の列挙型を含むクラス

両方の列挙型のチェックボックスのマトリックスが必要です。データはリストから読み取られ、リストに保存されます。このリストは実際のジャンクションテーブルです。とりあえず、手作業でリストに記入しました。

マトリックスは次のようになります。

すべてがコードビハインドで行われるWinFormソリューションを見つけました:http ://social.msdn.microsoft.com/Forums/eu/winformsdatacontrols/thread/33fae605-902a-40e3-9bbb-60b77fc33b9bしかし、それはできませんデータバインディングを使用してxamlで実行しますか?

0 投票する
1 に答える
304 参照

sql - 設計パターン - 多対多のデー​​タベース

多対多関係について質問です。ジャンクション テーブルを作成する必要があることはわかっています。しかし、次のシナリオがあるとしましょう:

顧客用に 1 つのテーブル 注文用に 1 つのテーブル 製品用に 1 つのテーブル

1 つの注文に複数の製品が含まれる場合があり、1 つの製品が複数の注文に含まれる場合があります。したがって、ジャンクション テーブルを作成します。Customers と products の間にジャンクション テーブルを作成することはできますか? このジャンクションは、注文を格納するための Order テーブルになりますか?

ありがとう

0 投票する
1 に答える
128 参照

sql - Rails 3:ジャンクションテーブルで注文できますか?

投稿ごとに多くの場所を作成するネストされたフォームがあります。各場所は、複数の投稿で使用することもできます。

たとえば、投稿 1 には Location1、Location2、および Location3 が含まれる場合があります。

AND Post 2 には Location1、Location4、および Location5 が含まれる場合があります

これらの場所を、追加されたのと同じ順序で投稿内に並べたいと思います。これを行う最も簡単な方法は、結合テーブル (Posts_Locations) に「注文」列を追加することだと思います:order_byが、コントローラーでこれを設定または定義する方法がわかりません。SQLで直接これを行う必要がありますか?

助言がありますか?これはこれを行うための最良の方法ですか?

0 投票する
1 に答える
775 参照

nhibernate - NHibernate。適合する。junctiontable に複合主キーを設定します

2 つのテーブルがあり、ジャンクション テーブルを作成したいと考えています。私はこのマッピングを持っています。

結合テーブルを作成しましたが、主キーとして設定しませんでした*、複合キー {ProjectId , UserId}

私は何を間違っていますか?

事前にサンクス。

※自分のコードについてこう言われた時も理解できたのが不思議でした。作成されたテーブルは、次の SQL コードによって作成されます。

そこには次のような行もあると思います:

edit2: (見やすくするため)

0 投票する
1 に答える
6823 参照

arrays - ジャンクションテーブルと外部キー配列?

ほとんどの場合、一方からのみ関係にアクセスする多対多の関係をモデル化しています。これは階層に似ており、トップダウンでアクセスされ、その逆ではありません。

Surveyは、多くの Answer を持ち、それに属します。 Questionsは、多くのAnswerを持ち、それに属します。

両方の関係は多対多である必要があります。これは、同じ質問がさまざまな調査で再利用され、多くの質問で同じ回答が使用される可能性があるためです。これは要件です。

標準の M2M 実装では、2 つのジャンクション テーブルと を使用surveys_questionsquestions_answersます。question_ids代わりに、PostgreSQL の整数配列を使用して Survey とanswer_idsQuestionに格納することを考えています。

ANY 演算子を使用して、外部キー配列に一致するすべての行をクエリできます。

SQL を使用して、質問と質問の回答を含むすべての調査を照会するにはどうすればよいでしょうか?

外部キー配列で返される行の順序をどのように一致させることができますか? すなわち。question_ids = [1,2,3] を使用すると、1、2、3 の順序で質問行が返されることが保証されます。

ジャンクションテーブルと比較して、これはどのようにパフォーマンスを発揮しますか (適切なインデックスが何であれ)。

これを提案しますか?このような M2M のモデル化に関するリソースはありますか?

アップデート

配列外部キーの参照整合性を PostgreSQL 9.3 に追加する提案がありましたが、含まれませんでした: http://blog.2ndquadrant.com/postgresql-9-3-development-array-element-foreign-keys/

外部キー配列PostgreSQL JOIN を使用して順序を維持することについての SO 配列要素の順序を持​​つ配列型の JOIN についての質問、実装方法は?

0 投票する
4 に答える
1189 参照

sql - SQL Server での選択的な更新

次のようなジャンクション テーブルを作成しました。

http://imageshack.us/scaled/landing/822/kantotype.png

私は、いくつかの行を選択できるクエリを見つけようとしていました-に基づいてPokémonID-そして、主要な「フィルタリング」の後に最初または2番目の行のみを更新します。

例えば:

を含む 2 行目の TypeID の値を変更したいとしますPokémonID = 2UPDATE KantoType SET TypeID = x WHERE PokémonID = 2両方の行が変更されるため、単に使用することはできません!

INEXISTSおよびを含むサブクエリを使用しようとしましLIMITたが、成功しませんでした。

0 投票する
3 に答える
86279 参照

sql - ジャンクションテーブルとの多対多の関係を作成するMS SQL

Microsoft SQL Server Management Studio を使用していますが、ジャンクション テーブルの作成中に、ジャンクション テーブルの ID 列を作成する必要がありますか? その場合、それを主キーと ID 列にする必要がありますか? または、多対多の関係で結合しているテーブルに 2 つの列を保持するだけですか?

たとえば、これが多対多テーブルの場合:

ジャンクションテーブルを作成する必要があります:

[そして、Movie_Category_Junction_ID私の主キーを作成し、ID 列として使用します] ?

または:

[そして、主キーまたはIDテーブルなしでそのままにしておく] ?

0 投票する
2 に答える
14099 参照

sql - 複数のテーブルに対する SQL クエリ。そのうちの 1 つはジャンクション テーブル

4 つのテーブルで構成されるかなり単純なデータベースがあります。

次の形式の結果を持つすべてのメッセージに対してクエリを実行したいと思います。

私は次のようにクエリを作成しました:

ある程度は機能しますが、重複した結果が返されます。user_ID が GROUP_MATRIX に複数回表示されると、そのユーザーの結果が重複するようです。明らかに、私がやろうとしているJOINを理解していません。誰かが私が間違っていることを理解するのを手伝ってくれますか?