Вы стали жертвой слабых правил MySQL, которые допускают включение неагрегатов в запрос GROUP BY.Конечно, вы работаете с MIN или MAX и только ONE одновременно, но рассмотрите этот запрос:
SELECT
CONCAT(work_type, work_id) AS condition_id,
status,
MIN(created_timestamp) as earliest,
MAX(created_timestamp) as latest
FROM conditions
GROUP BY condition_id
Теперь подумайте о , какая строка столбец статуса должен исходить из.Абсурдно ставить корреляцию между агрегированными (в GROUP BY) и неагрегированными столбцами.
Вместо этого напишите свой запрос следующим образом
SELECT X.condition_id, C.status, X.earliest
FROM (
SELECT
CONCAT(work_type, work_id) AS condition_id,
status,
MIN(created_timestamp) as earliest
FROM conditions
GROUP BY condition_id
) X JOIN conditions C
on CONCAT(c.work_type, c.work_id) = X.condition_id
and c.created_timestamp = X.earliest
Но если у вас было две записис той же самой меткой create_time она становится еще сложнее
SELECT X.condition_id, Max(C.status) status, X.earliest
FROM (
SELECT
CONCAT(work_type, work_id) AS condition_id,
status,
MIN(created_timestamp) as earliest
FROM conditions
GROUP BY condition_id
) X JOIN conditions C
on CONCAT(c.work_type, c.work_id) = X.condition_id
and c.created_timestamp = X.earliest
GROUP BY X.condition_id, X.earliest