Recolher grupos de linhas
Você pode criar um resultado de consulta na qual cada resultado da linha corresponde a um agrupar inteiro de linhas dos dados originais.Ao recolher linhas, existem várias coisas a serem lembrados:
Você pode eliminar linhas duplicadas Algumas consultas podem criar resultados define quais aparecem diversas linhas idênticas.Por exemplo, você pode criar um conjunto de resultados no qual cada linha contém a cidade e estado de nome de uma cidade que contém um autor – mas se a cidade tiver diversos autores, haverá diversas linhas idênticas.A SQL resultante pode parecer como este:
SELECT city, state FROM authors
O conjunto de resultados gerado pela consulta anterior não é muito útil.Se uma cidade contiver quatro autores, o conjunto de resultados incluirá quatro linhas idênticas.Uma vez que o conjunto de resultados não inclui todas as colunas diferentes de cidade e estado, não é possível distinguir linhas idênticas de Outros.Uma maneira para evitar essas linhas duplicadas é incluir colunas adicionais que podem tornar as linhas diferentes.Por exemplo, se você incluir o nome do autor, cada linha será diferente (desde que nenhum dois autores de nome semelhante ao vivo em qualquer uma cidade).A SQL resultante pode parecer como este:
SELECT city, state, fname, minit, lname FROM authors
Naturalmente, a consulta acima elimina o sintoma mas realmente não resolve o problema.Ou seja, o conjunto de resultados tem haja duplicatas, mas não é mais um conjunto sobre cidades de resultados.Para eliminar duplicações no conjunto de resultados original e ainda ter cada linha descreve uma cidade, você pode criar uma consulta retornar apenas linhas distintas.A SQL resultante pode parecer como este:
SELECT DISTINCT city, state FROM authors
Para obter detalhes sobre a eliminação de duplicatas, consulte Como: Excluir linhas duplicadas.
Você pode calcular em grupos de linhas Ou seja, você pode resumir as informações em grupos de linhas.Por exemplo, você pode criar um conjunto de resultados no qual cada linha contém o nome de cidade e estado de uma cidade que contém um autor, mais uma contagem do número de autores contidos naquela cidade.A SQL resultante pode parecer como este:
SELECT city, state, COUNT(*) FROM authors GROUP BY city, state
Para obter detalhes sobre o cálculo em grupos de linhas, consulte Resumindo os resultados da consulta e Classificar e agrupar os resultados da consulta.
Você pode usar critérios de seleção para incluir grupos de linhas Por exemplo, você pode criar um conjunto de resultados no qual cada linha contém o nome de cidade e estado de uma cidade que contém diversos autores, mais uma contagem do número de autores contidos naquela cidade.A SQL resultante pode parecer como este:
SELECT city, state, COUNT(*) FROM authors GROUP BY city, state HAVING COUNT(*) > 1
Para obter detalhes sobre como aplicar critérios de seleção em grupos de linhas, consulte Como: Especificar condições para grupos e Como: Use HAVING e WHERE cláusulas na mesma consulta.