Порядок должен быть во втором или объединение должно быть подзапросом
Возможно, вы имеете в виду
SELECT * FROM (
(SELECT *
FROM remedi.meds_donation
WHERE state_short_name IN ('TN')
AND request_date between "2018-10-01 00:55:48" AND "2018-11-29 13:02:14"
)
union all
(SELECT *
FROM remedi.meds_donation
WHERE state_short_name NOT IN ('TN')
AND request_date between "2018-09-01 00:55:48" AND "2018-10-29 13:02:14"
)
) T ORDER BY request_date DESC
, но я думаю, что лучше
SELECT *
FROM remedi.meds_donation
WHERE state_short_name NOT IN ('TN')
AND (request_date between "2018-09-01 00:55:48" AND "2018-10-29 13:02:14" or request_date between "2018-09-01 00:55:48" AND "2018-10-29 13:02:14")
ORDER BY request_date DESC