Creo que la mejor manera es crear una tabla temporal con el conjunto de elementos necesarios (procedimiento que toma las identificaciones de los elementos como parámetros o algo por el estilo) y luego unirla con todas las tablas anteriores unidas.
Si para un ID de cesta determinado NO tiene valores nulos en el lado derecho de la combinación izquierda, la cesta contiene todos los elementos necesarios.