そのため、データベース内のいくつかのテーブルを使用していますが、クエリを実行する最良の方法を考えています。
セットアップは次のとおりです。
EVENTS:
int event_id
varchar event_name
date event_date
ATTENDANCE:
int attendance_id
int event_id (foreign key for EVENTS)
int user_id (foreign key for USERS)
int status
USERS:
int user_id
varchar first_name
varchar last_name
varchar email
私がやろうとしていたことのほとんどは、出席を取得したいイベント (ID #) があり、そのイベントに一致するすべてのレコードの出席テーブルをクエリし、次に参照されているすべてのユーザーのユーザー テーブルをクエリすることです。そのイベントの一環としての出席。
最初に思いついたのは、まずデータベースにすべての出席エントリを照会して配列を取得し、次に各レコードをループしてユーザー情報を照会することでした。ただし、これはかなり非効率的なようで、結合などを使用したより良い方法が必要です。結合の経験があまりないので、助けてもらえないかと思っていました。
これは私が最初に考えていたものの疑似コードです:
SELECT * FROM attendance WHERE event_id = eventID
while (row exists):
SELECT FROM users WHERE user_id = attendanceUserID
get info export in xml...etc.
これが最善の方法だとは思いません。