問題タブ [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.
sql - クエリで 1 つのレコードに関連する 1 つのフィールドに結合されたジャンクション テーブルからの情報
このサンプル データベースのクエリを作成しようとすると、問題が発生します: 3 つのテーブル = Program Code、Work、Work Code。プログラム コード テーブルは、ワーク コード テーブルを介して、ワーク テーブルと多対多の関係にあります。テーブル レイアウトは次のとおりです。
ここで、従業員は仕事を完了しますが、その仕事に対して複数のコードを請求する必要があります。これにより、Work Code テーブルに多くのレコードが作成されます。従業員 ID、仕事の種類、説明、時間数を取得し、その 1 つのジョブ エントリに使用されるすべてのプログラム コードをリンクするクエリを作成したいと考えています。実行するクエリがありますが、1 つのフィールドにすべてのプログラム コードを含む 1 行ではなく、プログラム コードごとに 1 行が作成されます。これは、SQL バックエンドを備えた Access フロント エンドです。
これは私が今持っているものです:
しかし、ワーク ID ごとに 1 つのフィールドにプログラム コードを配置したいと考えています。
php - 複数のジャンクション テーブルから取得した情報を MySQL と PHP で表示する
レッスン予約アプリです。ジャンクション テーブルを介して (ID を介して) 生徒テーブル (ID、名、姓など) および教師テーブル (ID、名、名前など) にリンクするレッスン テーブル (ID、開始時間、終了時間など) があります。 、姓など)。これらはすべて多対多の関係です。レッスンは複数の生徒を持つことができ、生徒は複数のレッスンを持つことができます。教師に対しても同様です。
私の質問は、データを取得して表示するための最良の方法は何ですか? 日付順に並べ替えられた各レッスンを、レッスンの生徒とレッスンの教師とともにリストできるようにしたいと考えています。
1 つの方法は、SQL クエリを使用してすべてのレッスンを検索し、ジャンクション テーブルを介してすべてのテーブルを結合することです。次に、ループを使用してそれらをすべてページ上の表に吐き出します。私が直面している問題は、作成されるテーブルが、各生徒と教師を説明するために異なる行に同じレッスンをリストすることです。これにより、レッスンの開始時間または ID でブラウズしようとすると、非常に冗長なリストが作成されます。
すべての生徒を含む生徒の列とすべての教師を含む教師の列を含むリストに、各レッスンを 1 行として表示する最良の方法は何でしょうか?
これが不明な場合は申し訳ありません。ご意見をお寄せいただきありがとうございます。詳細を明確にしたり追加したりする必要がある場合はお知らせください。
表の列:
Student テーブル
studentID firstName lastName email など
Teacher テーブル
teacherID firstName lastName email など
レッスン テーブル
lessonID startTime endTime
レッスン/生徒 Junc テーブル
JuncID lessonFK StudentFK
レッスン/教師 Junc テーブル
JuncID lessonFK TeacherFK
望ましい出力: https://docs.google.com/file/d/0BxmJPAg7gA1AODZKOUg1RXFwMDQ/edit?usp=sharing
更新:私がいるところ。私はそれを持っていると思います
機能
find_teachers_by_lesson_id 関数は、教師テーブルへのアクセスを除いて、生徒のものと同じです。
実際にはこれは機能しますが、誰かが構造についてコメントできますか? これは受け入れられる解決策ですか、それとも後で問題が発生する可能性がありますか? ご意見をお寄せいただきありがとうございます。
mysql - キーの作成後に MySQL ジャンクション テーブルが更新されない
最初に2つのテーブルを作成しました。後で、この 2 つの間に M:M 関係を追加する必要があることに気付きました。そのため、ジャンクション テーブルを作成し、テーブル間に必要な関係を作成しました。私が直面している問題は、ジャンクション テーブルを作成した後、他の 2 つのテーブルのデータが自動的に入力されないことです。このデータは他のテーブルから自動的に取得する必要がありますか、それとも何か不足していますか?
c# - ジャンクション テーブルを使用した多対多テーブルの適切なモデルの実装
最初にコードを使用するのではなく、ID と名前のフィールドを持つ artist というテーブル、id とタイトルのフィールドを持つ albums というテーブル、artist_id と album_id を持つ junction_artists_albums テーブルを作成しました。
ここに私のモデル/コンテキストクラスがあります:
アーティスト:
アルバム:
MusicDBContext:
ジャンクション テーブルが入力されていないため、これは機能しません。これがばかげた質問である場合は申し訳ありませんが、私は Entity Framework に非常に慣れていません。