Update:Meine ursprüngliche Antwort war identisch mit der von Quassnoi, aber 1 Minute zu spät, also habe ich beschlossen, sie zu löschen und stattdessen etwas anderes zu tun. Diese Abfrage geht nicht davon aus, dass (ID, Datum) eindeutig ist. Bei mehreren Einträgen wird der günstigste ausgewählt. Außerdem summiert es die Gesamtkosten und gibt auch das zurück, was ebenfalls nützlich sein könnte.
SELECT id, SUM(price) FROM (
SELECT id, date, MIN(price) AS price
FROM Table1
GROUP BY id, date) AS T1
WHERE `date` BETWEEN '2010-08-05' AND '2010-08-07'
GROUP BY id
HAVING COUNT(*) = DATEDIFF('2010-08-07','2010-08-05') + 1