これは多くの人にとってかなり基本的なことのように思えるかもしれませんが、私はこれを理解するのに苦労しています.
次のようなMySQLテーブルがあります。
| email | name | mod1 | mod2 | mod3 | mod4 | mod1r | mod2r | mod3r | mod4r |
| jb@test.com | Joe Bloggs | 401 | 402 | 405 | 410 | yes | no | no | no |
| ab@test.com | Alex Baines | 401 | 404 | 407 | 409 | no | yes | yes | no |
| rs@test.com | Rick Summer | 403 | 406 | 408 | 409 | no | no | no | no |
最後の 4 つの列は、前の 4 つの列に関連しています (したがって、mod1r は mod1 に、mod2r は mod2 に、などに対応します)。
私がする必要があるのは2つあります:
1: 最後の 4 つの列の 1 つ以上に「はい」が含まれているレコードを特定します。
2: 「はい」のデータに対応する前の 4 つの列のデータを特定します。
3: 結果を表に表示する
したがって、上記の例では、Rick Summer は「はい」のデータがないため、完全に破棄する必要があります。Joe Bloggs は、'mod1r' 列に yes があり、'mod1' の対応する値が '401' であるため、'401' の値で 1 回表示されるはずです。Alex Baines は 2 回表示される必要があります。1 回目は値「404」、2 回目は値「407」です。
最終的な出力を次のようにしたいと思います (HTML テーブル内):
| Name | Module |
| Joe Bloggs | 401 |
| Alex Baines | 404 |
| Alex Baines | 407 |
誰でも助けることができますか?多次元配列を使用してデータを取得する必要があると想定していますが、その方法を理解するのに苦労しています。
ありがとう!