Ma data è un campo datetime?

codice:
SELECT DISTINCT source 
FROM tabella 
WHERE date_format(data,'%Y-%m-%d') = curdate() - interval 1 day