¿A qué tipo de cache te refieres? ¿El del browser/en disco/memcache?
Si es el del browser debes poner esa consulta en un php aparte. Que se haga una petición separada solo para el banner y entonces puedes poner unas cabeceras de cache:
Código:
header('Cache-Control: max-age=3600, must-revalidate'); // Cache por 1 hora.
En disco y por memcache primero revisas si ya está guardado el resultado y si no haces la petición y guardas el resultado.
Saludos