0

そのため、データベース内のいくつかのテーブルを使用していますが、クエリを実行する最良の方法を考えています。

セットアップは次のとおりです。

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.

これが最善の方法だとは思いません。

4

1 に答える 1