2017-02-02 15 views
0

私は次の構造のStudent_Tableを持っています。同じテーブル内のレコードを比較する

にそう

Student_Note Table 
    student_id seq_num note 
    11212   1  firstnote 
    11212   2  secondNote 
    11212   3  thirdNote 
    21232   1  secondstudentnote1 
    21232   2  secondstudentnote2 

私はparticilar学生のために(最大SEQ_NUMを持っている)、最新の注意を取得したいです。

私はそれが複数の行を与えているクエリ

select tn.note from Student_Note tn JOIN Student_Note tn1 
      ON (tn.student_id =tn1.student_id AND tn.seq_num < tn1.seq_num) 
      where tn.student_id=11212 

次試してみました。上記のシナリオを達成するには?

私は上記のクエリをサブクエリとして使用していることを忘れています。 sybaseのTOP句はサブクエリでは機能しません。

P.S.私はsybaseを使用しています。

答えて

0

OK - 明らかに変更はTOPを使用することはできません.........

select tn.note from Student_Note tn 
where tn.student_id=11212 
and tn.seq_num = (SELECT MAX(seq_num) from Student_Note WHERE Student_Note.Student_Id = tn.Student_Id) 
+0

を試してみてください、SybaseのTOPにでは動作しませんので、私は、サブクエリで使用していますサブクエリ。 – sar

0

この

select  substring(max(str(seq_num,10,'0') + note),11,len(note)) 
from  Student_Note 
where  student_id=11212 
関連する問題