Това е приобщаващ. Сравнявате дати и времена с дати. Втората дата се тълкува като полунощ, когато започва денят .
Един от начините да поправите това е:
SELECT *
FROM Cases
WHERE cast(created_at as date) BETWEEN '2013-05-01' AND '2013-05-01'
Друг начин да го коригирате е с изрични двоични сравнения
SELECT *
FROM Cases
WHERE created_at >= '2013-05-01' AND created_at < '2013-05-02'
Аарон Бертран има дълъг запис в блога за дати (тук), където обсъжда този и други проблеми с датата.