pola w tickets: subject, name, email, phone, status, ID, cat, rep, priority, ip, trans_msg, timestamp
pola w tickets_messages: ticket, timestamp, message
tickets_messages.ticket=tickets.ID
Jeśli nadchodzi zgłoszenie wypełniania jest tickets i tickets_messages i te 2 rekordy mają taki sam timestamp, jeśli nadchodzi kolejna wiadomość w tym samym zgłoszeniu wypełniana jest tylko tickets_messages z polem ticket = ID i aktualnym timestamp. Jak zmodyfikować poniższe zapytanie aby wybrać z tabeli ticket_messages tylko najnowszy timestamp dla danego ID ? Poniższe zapytanie wyświetla mi wszystkie rekordy z datami, czyli przykładowo:
#zgłoszenie1 data1
#zgłoszenie1 data2
#zgłoszenie1 data3
#zgłoszenie2 data1
#zgłoszenie3 data1
#zgłoszenie2 data2
#zgłoszenie3 data2
#zgłoszenie3 data3
#zgłoszenie1 data4
Gdzie kolejny numerek przy data oznacza rosnącą datę.
Chce natomiast osiągnąć taki efekt:
#zgłoszenie2 data2
#zgłoszenie3 data3
#zgłoszenie1 data4
(tylko najwyższe daty)
SELECT ticket, ticket_messages.timestamp AS timestamp, subject, name, email, phone, STATUS, tickets.ID AS ID, cat, rep, priority, ip, trans_msg, tickets.timestamp AS timestamp2 FROM ticket_messages, tickets WHERE (tickets.ID=ticket_messages.ticket) AND (tickets.STATUS='open') ORDER BY ticket_messages.ID ASC
Czy ktoś może doradzić ?