テーブルstudent
に大量のレコードがあります。学生のために私は他のテーブルactivity
とaction
を持っています。条件によっては3つのテーブルからデータを取得する
私は、テーブルにactivity
テーブルと複数のアクションで複数のアクティビティを持っています。
私は活動や行動を取った生徒の記録を取りたいと思っています。そして、アクティビティテーブルからmax(activity_date)
をフェッチし、すべての学生のためのmax(action_date)
テーブルstudent
に大量のレコードがあります。学生のために私は他のテーブルactivity
とaction
を持っています。条件によっては3つのテーブルからデータを取得する
私は、テーブルにactivity
テーブルと複数のアクションで複数のアクティビティを持っています。
私は活動や行動を取った生徒の記録を取りたいと思っています。そして、アクティビティテーブルからmax(activity_date)
をフェッチし、すべての学生のためのmax(action_date)
の行動データをフェッチ私は、SQLの下に、あなたの役に立つと思います
select t1.student_id, t1.student_name, t1.class, t2.Last_activity_date, t3.Last_action_date, t3.Action_desc
(select student_id, student_name, class from student) as t1 join
(select student_id, max(activity_date) as Last_activity_date group by student_id) as t2 on t2.student_id =t1.student_id join
select student_id, max(actiondate) as Last_action_date, Action_desc group by student_id) as t3 on t3.student_id =t1.student_id
order by 1
上記のクエリでエラーが発生しました "フィールドに 'student_id'列リストがあいまいです " – Aditi
だから私はこれを書いた...それはうまくいく................................... ........................ t1としてstudentからのt1.student_id、max(activity_date)、max(action_date)を選択します。 t1にt2として結合アクティビティを残しました。 .student_id = t2.student_idは、参加アクションをt3として残しました。 on t1.student_id = t3.student_id グループby t1.student_id – Aditi
@Aditi修正した私の答えを見てください。私の答えを受け入れることができますか? –
あなたのテーブル構造といくつかのデータを投稿、あなたが得る可能性があります回答。 –
学生の表は、このようなものです: - 1. \t学生 STUDENT_ID \t•\t•Student_name \t•アクティビティ 2. \tクラス\t•同上 STUDENT_ID \t•Activity_date \t•Activity_by \t• 3. \tアクション \t Id \t Action_by \t Actio n_date •\t Student_id •\t Action_desc – Aditi
[質問する**](http://stackoverflow.com/help/how-to-ask) – 1000111