[1] Get the latest create_datetime values ​​for each offer_id :
SELECT offer_id, max(create_datetime) as max_time FROM offers_problems GROUP BY offer_id
[2] Retrieving id's of offers from offers_problems with the latest create_datetime :
SELECT op.id FROM offers_problems op JOIN ([1]) latest ON op.offer_id = latest.offer_id AND op.create_datetime = latest.max_time
[3] Result:
SELECT * FROM offers JOIN offers_problems op ON offers.id = op.offer_id WHERE op.id IN ([2])
Final request:
SELECT * FROM offers JOIN offers_problems op ON offers.id = op.offer_id WHERE op.id IN ( SELECT op.id FROM offers_problems op JOIN ( SELECT offer_id, max(create_datetime) as max_time FROM offers_problems GROUP BY offer_id ) latest ON op.offer_id = latest.offer_id AND op.create_datetime = latest.max_time )