Puedes hacer esto calculando el min()
y usando un join
para hacer el filtrado:
update t join
(select date, min(value) as minvalue
from t
group by date
) tmin
on t.date = tmin.date and t.value = tmin.minvalue
set tag = 1;