sql >> Base de Datos >  >> RDS >> Mysql

MySQL A o B pero NO ambos

Algo como esto debería satisfacer la especificación:

SELECT f.bar 
  FROM frequents f
 WHERE f.drinker IN ('John','Rebecca')
 GROUP 
    BY f.bar
HAVING COUNT(DISTINCT f.drinker) < 2
  • obtener todo bar para 'Juan' y/o 'Rebeca'
  • contraer las filas en una sola fila para cada bar
  • obtener un recuento de drinker para cada barra
  • desechar las filas que cuentan hasta 2 (es decir, tanto John como Rebecca)
  • dejando solo los valores de bar para John y no Rebecca o viceversa