私は学生と呼ばれるテーブルがあり、すべての学生のリストが含まれています。各学生は、学生IDで識別される別のテーブルに格納された多数のコースを持つことができます。mysqlでこのクエリを実行することはできますか?
私は学生の情報を使って学生テーブルから行を取得し、そのすべてのコースを1つのクエリで取得するクエリを実行したいと思います。私が欲しいの出力はこのようなものです:学生の情報を取得する
Array
(
[0] => Array
(
[id] => 5
[firstName] => Bob
[lastName] => Smith
[email] => ....
[courses] => Array
(
[0] => Array
(
[id] => 30
[name] => Test Course
[price] => 400
)
[1] => Array
(
[id] => 30
[name] => Test Course 2
[price] => 300
)
)
)
)
、私はこのクエリ行うだろう:
:学生のためのコースを取得するにはSELECT * FROM students WHERE something ='something'
を、私はこれを行うだろう
SELECT * FROM courses WHERE studentId = '5'
それは一度に両方のクエリを実行し、上記のアレイのような出力を得る、または私はそれぞれの学生をループしており、そのコースを得るのですか、それはmanuallly、アレイに接続することは可能ですか?
'group_concat'が役立つかもしれません。 Link:http://www.dougboude.com/blog/1/2009/12/A-SWEET-Little-MySQL-Function-GroupConcat.cfm – Strawberry
SQL構文を探しているのか、配列形式にするためのコーディングを探していますか? –
http://stackoverflow.com/a/5378180/170365 – Strawberry