Bueno, yo intentando simplificarlo hice la siguiente consulta (supongamos que tu tabla se llame tabla1, con id, campo1, campo2 y fecha):
Código SQL:
Ver originalSELECT t1.id, t1.campo1, t1.campo2, t2.fecha FROM tabla1 AS t1 LEFT JOIN (
SELECT fecha FROM tabla1 WHERE DATEDIFF(NOW(),fecha) <= 7) AS t2 ON t1.id = t2.id;
Esto devolverá la fecha en los casos que sea menor o igual a hace siete días y en el resto de casos devolverá NULL sólo en ese campo.