Software  
 
Rede de conhecimento computador >> Software >> SQL Server >> Content
Qual é a diferença entre onde e ter cláusulas SQL?
As cláusulas `where` e` tendo 'em SQL servem a propósitos diferentes, embora ambos filtrem linhas com base nas condições. Aqui está um colapso:

onde cláusula

* Objetivo: Filtros linhas antes de Quaisquer operações de agregação (como `sum`,` avg`, `count` etc.).
* aplica -se a: Linhas individuais.
* Condições: Normalmente envolve comparações e operadores lógicos que operam em colunas individuais dentro da tabela.
* Exemplo:
`` `SQL
Selecione * de clientes onde país ='EUA';
`` `
Esta consulta recupera todos os clientes da tabela de 'clientes', onde a coluna 'país' é igual a 'EUA'.

tendo cláusula

* Objetivo: Filtros linhas depois de operações de agregação.
* aplica -se a: Os resultados da agregação (grupo por).
* Condições: Normalmente envolve comparações de valores agregados usando funções agregadas (por exemplo, `soma (preço)`, `avg (idade)`, `count (*)`) em combinação com operadores lógicos.
* Exemplo:
`` `SQL
Selecione City, AVG (idade) como média
De clientes
Grupo por cidade
Tendo médio_age> 30;
`` `
Esta consulta agrupa clientes por 'cidade' e calcula a idade média de cada cidade. Em seguida, filtra os resultados para mostrar apenas cidades onde a idade média é maior que 30.

Diferenças -chave em poucas palavras:

* tempo: `Onde 'filtros antes da agregação,` tendo' filtros depois.
* Escopo: `Onde 'trabalha em linhas individuais,` tendo' trabalha em resultados agregados.
* Condições: `Where` usa condições em colunas individuais,` tendo `usa condições em valores agregados.

Quando usar cada cláusula:

* Use `where` quando você deseja filtrar dados com base nos valores individuais da linha antes que qualquer agregação ocorra.
* Use `tendo` quando deseja filtrar resultados agregados (como dados agrupados) com base em condições que envolvem valores agregados.

Nota: Você pode usar as cláusulas `where` e` tendo` na mesma consulta, mas `where 'é aplicado primeiro para filtrar as linhas usadas para agregação e, em seguida,` tendo' é usado para filtrar os resultados agregados.

Anterior :

Próximo :
  Os artigos relacionados
·Como transferir o banco de dados Microsoft SQL 
·Mysql Vs . Microsoft SQL Server 
·O que é um servidor de indexação? 
·Como configurar o SQL Server 2008 para permitir conexõ…
·Como usar o MSDE Escritor em 2005 MS SQL Server 
·Como instalar o Microsoft SQL Server 2005 Standard Edit…
·Como faço para verificar a versão do SQL Server Expre…
·Quais são as duas maneiras de criar uma consulta? 
·Setting Prompt de Comando para uma conexão SQL Server …
·Como posso executar uma verificação de integridade em…
  Artigos em destaque
·Como exibir a caixa de diálogo Galeria de Diagramas em…
·Como editar GEDCOM 
·Como criar um vídeo Screensaver 
·As diferenças de tempo entre duas datas no Oracle 
·Como adicionar vírgulas Após Palavras em Microsoft Wo…
·Como se conectar a VIM Swank 
·Qual é o benefício do Adobe Flash Player na navegaçã…
·Problemas com Comparando campos de data no Microsoft Ex…
·Como adicionar um slide no PowerPoint 
·Como configurar um proxy VM 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados