if there are any results from today, give me those
otherwise, give me the ten most recent results
chatGPT has me down a rabbit hole of shit like this
SELECT *
FROM (
SELECT *,
EXISTS (SELECT 1 FROM your_table WHERE DATE(date_column) = CURDATE()) AS has_today
FROM your_table
ORDER BY has_today DESC,
CASE WHEN has_today = 1 THEN date_column ELSE NULL END DESC,
date_column DESC
LIMIT 10
) AS combined_results;
and this
SELECT *
FROM your_table
WHERE DATE(date_column) = CURDATE() OR
(SELECT COUNT(*) FROM your_table WHERE DATE(date_column) = CURDATE()) = 0
ORDER BY IF(DATE(date_column) = CURDATE(), 0, 1), date_column DESC
LIMIT 10;
but there has to be an easier way, right?
sorry not python but whatever