SQL query to compare rows

I have a table like this:

    Sequence    ID      Date          other fields

    1           23      2012-01-01
    2           23      2012-02-03
    3           23      2012-02-02
    4           45      2012-01-01
    5           45      2012-01-02
    6           52      2012-01-01
    7           52      2012-03-01
    ..          ...

I need a query that returns me rows that have inversed dates(there is a higher sequence with an older date

in example abow it should return rowq with sequence 2 and 3. For id 23, Seq 2 has date newer that sequence no 3.

Thanks


select * from
   (select T1.Sequence as S1, T2.Sequence as S2, T1.ID
    from T as T1, T as T2
    where T1.Sequence < T2.Sequence
      and T1.Date > T2.Date
      and T1.ID = T2.ID) Subq
   inner join T on (T.ID = Subq.ID
               and (T.Sequence = Subq.S1 or T.Sequence = Subq.S2))