Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como retornar linhas que possuem os mesmos valores de coluna no MySql


Este é um exemplo de uma consulta "conjuntos dentro de conjuntos". Eu recomendo a agregação com o having cláusula, porque é a abordagem mais flexível.
select score
from t
group by score
having sum(id = 2) > 0 and -- has id = 2
       sum(id = 4) > 0     -- has id = 4

O que isso está fazendo é agregar por pontuação. Em seguida, a primeira parte do having cláusula (sum(id = 2) ) está contando quantos "2"s existem por pontuação. A segunda é contar quantos "4"s. Somente pontuações que têm um "2" e "4" são retornadas.