効率的な方法で出席表を印刷できません。おそらくこれを行うための用語がありますが、それが何であるかがわからないので、解決策を探すのに苦労しています. ピボット テーブルは近いですが、十分ではありません。
次のようにレイアウトされたMySQLデータベースがあります(簡略化):
Log_events(event_id, event_name, ...)
Log_members(member_id, member_name, ...)
Log_attendance(member_id, event_id, ...)
Log_events にはイベントのすべてのデータがあり、Log_members には各メンバーのすべてのデータがあり、Log_attendance にはメンバーがイベントに参加するたびに 2 つの ID エントリがあります。
すべてのイベントを列として、次にすべてのメンバーを行として持つテーブル (PHP を使用した HTML テーブル) を印刷しようとしています。次に、log_attendance テーブルを使用して、メンバーがイベントに参加した各テーブル セルに、次のような目盛りまたは情報を出力します。
名前 | イベント1 | イベント2 | イベント3 ---------------------------------- メンバー1 | X | X | バツ メンバー2 | | | X | メンバー3 | X | | | バツ
途方もない量のネストされたクエリなしでこれを行う方法を理解するのに苦労しています。これを効率的に行うにはどうすればよいですか?
これは私が印刷しようとしている親切なものの例です: http://www.worldoflogs.com/guilds/30890/character/