De meest waarschijnlijke verklaring is dat MySQL een ander uitvoeringsplan kiest wanneer u dat predikaat toevoegt.
Je zou de EXPLAIN-uitvoer van de twee query's kunnen vergelijken, die met de journey_day.day=3
predikaat en die zonder.
Ik durf te wedden dat MySQL een andere join-volgorde kiest en MySQL ervoor kiest om een index te gebruiken die day
heeft als een leidende kolom wanneer het predikaat is opgenomen. En waarschijnlijk zorgt dat ervoor dat er veel meer rijen worden geopend en onderzocht, of mogelijk genereert MySQL een grote tussenset voordat het rijen uitfiltert.