SELECT * FROM assignments
LEFT JOIN workers ON workers.id = assignments.id
LEFT JOIN positions ON positions.id = assignments.position
LEFT JOIN position_descriptions ON position_descriptions.id = positions.id
LEFT JOIN employers ON employers.id = positions.employerid
LEFT JOIN additonal_data ON additonal_data.id = assignments.id
**LEFT JOIN dates ON dates.id = assignments.id**
WHERE assignments.status = 3
**AND dates.work_length= 3**
**GROUP BY assignments.id**
ORDER BY assignments.id DESC
У меня только 2 пользователя в исходном запросе. Теперь, когда я добавил таблицу dates
, она начала умножать количество пользователей на количество дат с dates.work_length = 3
, поэтому я сгруппировал по assignments.id
, и это хорошо работает.
Но теперь в таблице dates
дважды work_length = 3
(первое января 2001 года, второе - 01 января 2011 года) и с этим запросом возвращает первую дату; Мне нужно, чтобы вернуть самую последнюю дату 01.01.2011.