Hola Marea2 lo que buscas lo puedes obtener con la siguiente consulta:
    
Código MySQL:
Ver originaland ((asign1
='mate' or asign2
='mate' or asign3
='mate' or asign4
='mate') and (asign1
='quim' or asign2
='quim' or asign3
='quim' or asign4
='quim') and  (asign1
='biol' or asign2
='biol' or asign3
='biol' or asign4
='biol')) and (((asign1
='mate' or asign2
='mate' or asign3
='mate' or asign4
='mate') and (asign1
='quim' or asign2
='quim' or asign3
='quim' or asign4
='quim')) or  ((asign1
='mate' or asign2
='mate' or asign3
='mate' or asign4
='mate') and (asign1
='biol' or asign2
='biol' or asign3
='biol' or asign4
='biol')) or  ((asign1
='quim' or asign2
='quim' or asign3
='quim' or asign4
='quim') and (asign1
='biol' or asign2
='biol' or asign3
='biol' or asign4
='biol')))  and ((asign1
='mate' or asign2
='mate' or asign3
='mate' or asign4
='mate') or (asign1
='quim' or asign2
='quim' or asign3
='quim' or asign4
='quim') or (asign1
='biol' or asign2
='biol' or asign3
='biol' or asign4
='biol')) 
  
aquí no solo se prueban las combinaciones que indicaste (mate,quim,biol), (mate,quim) y (mate), sino que mostrara cuando existan 3 coincidencias, 2 coincidencias y 1 coincidencia. 
Espero te sirva, Saludos.