1

古いデータベースを使用して新しいシステムを作成していて、助けが必要です(経験不足のため)これは非常に複雑かもしれませんが、それがデータベースのセットアップ方法であり、変更できません。

3つのテーブルがあります。セッション1、セッション2、および登録者。

セッション1とセッション2は、内容を除けば同じです。つまり、特定の日にセッション1とセッション2を予約したい場合、データベースはセッション1とセッション2の「id」行の両方に「5」と言うように挿入します。「id」はプライマリインデックスです。

'Registrants'には2つの行があり、登録者の名前と、セッション1とセッション2で見つかったIDの一部を含むリスト(例:5、6、7)が含まれています。セッション1、セッションのIDは、登録者のセッション1リストに含まれます。

私が言ったように。複雑。

問題なく個別のクエリを実行できます

SELECT * FROM Session_1 WHERE id IN ($registrant_session_1 /* This is a single quote implode for the ouput of registrant_session_1 */ )"

SELECT * FROM Session_2 WHERE id IN ($registrant_session_2 /* This is a single quote implode for the ouput of registrant_session_2 */)

同時出力のためにそれらを結合するクエリを作成するのに助けが必要です。したがって、理論では、最初にセッションチェックを実行し、次にIDに基づいてそれらを結合します。

4

2 に答える 2

0

これは、MySQLを最初に学習したときに特に役立つと思ったサイトですhttp://www.tizag.com/mysqlTutorial/mysqljoins.php

于 2012-08-10T12:51:14.467 に答える
0

おそらく、「ユニオン」句を使用できます FROM Session_1 WHERE Session_1.id IN ($registrant_session_1 /* This is a single quote implode for the ouput of registrant_session_1 */ ) UNION (SELECT * FROM Session_2 WHERE Session_2.id IN ($registrant_session_2 /* This is a single quote implode for the ouput of registrant_session_2 */)

于 2012-08-10T12:49:45.870 に答える