• What if you had 3 rows for the civic? Or are you just looking for the lat two rows?

    select  max(date)

      , car, type

     from tableA

     group by car, type

    will give you the last row for each car. From there you can transform this into a subquery to get the row.

    select 

     date

      , car, type

     from tableA a

      where a.date = (select max( b.date)

                             from TableA b

                            where a.car = b.car and a.type = b.type)

    To get the previous row, you'd need a self join that will get the next most recent date.

     group by car, type