0

次のフィールドを持つフォームというテーブルがあります

StudentID
form
date

これとは別に、学生の情報を含む学生テーブルがあり、StudentID はそのテーブルからの外部キーです。

学生がフォームを移動すると、このテーブルに新しいエントリが追加されます。そうすれば、彼らがいつ移動したかを記録できます。

学生テーブルからすべての情報を取得し (すべての学生について)、現在のフォーム (つまり、上記のフォームテーブルの最新の日付を持つフォーム) に参加するクエリを作成しようとしています。.

個々の学生に対してはできますが、学生テーブル全体に対して行う方法が見つかりません。

どんな助けでも大歓迎です。

4

1 に答える 1

0

1 つの方法を次に示します。

select s.*,
       max(f.date) as MostRecentDate,
       substring_index(group_concat(form order by date desc), ',', 1) as MostRecentForm
from student s join
     form f
     on s.StudentID = f.StudentId
group by s.StudentId;
于 2013-08-26T22:52:47.223 に答える