HAVING sats används för att filtrera grupper av rader. Du refererar till min(a) och max(a) som (i avsaknad av någon GROUP BY sats) samlas över alla a värden i tabellen men använd sedan en jämförelse mot en enda a värde.
Så vilken a värdet ska MySQL använda? Alla andra RDBMS som jag känner till skulle ge ett fel vid denna tidpunkt, men MySQL tillåter detta. Från dokumenten
Så i ditt fall från resultaten du får verkar det som att det slutade med 1 som det skalära värdet för a men detta beteende är inte garanterat och det kunde lika gärna ha använt 2 eller någon annan befintlig a värde.