Maison base de données SQL Utilisation d'avoir et où dans SQL

Utilisation d'avoir et où dans SQL

May 02, 2024 am 02:33 AM

La clause WHERE filtre les lignes de l'instruction SELECT et filtre les données sous-jacentes en fonction des conditions des lignes. La clause HAVING filtre les groupes dans une instruction GROUP BY, en filtrant les groupes en fonction de leurs résultats agrégés. Les principales différences : WHERE traite les lignes individuelles et évalue les conditions des lignes ; HAVING traite les groupes et évalue les résultats agrégés des groupes ; WHERE affecte les lignes qui sont incluses dans les résultats, et HAVING affecte les groupes qui sont inclus dans les résultats.

Utilisation d'avoir et où dans SQL

Utilisation des clauses WHERE et HAVING dans SQL

Les clauses WHERE et HAVING sont utilisées dans SQL pour filtrer les ensembles de données, mais elles diffèrent par le contexte de traitement et la cible :

WHERE Clause :

  • La clause WHERE est utilisée pour filtrer les lignes après FROM dans l'instruction SELECT.
  • Il évalue les lignes de la table ou de la vue sous-jacente en fonction d'une condition pour chaque ligne.
  • Il est utilisé pour filtrer les données sous-jacentes, affectant ainsi les lignes incluses dans le résultat final.

Exemple :

SELECT * FROM employees WHERE salary > 50000;
Copier après la connexion

Cette requête renvoie tous les employés dont le salaire est supérieur à 50 000 $.

Clause HAVING : 

  • La clause HAVING est utilisée pour filtrer les groupes dans l'instruction GROUP BY.
  • Il évalue les groupes en fonction de leurs résultats agrégés.
  • Il est utilisé pour filtrer les groupes, affectant ainsi les groupes à inclure dans le résultat final.

Exemple :

SELECT department, SUM(salary) AS total_salary
FROM employees
GROUP BY department
HAVING total_salary > 100000;
Copier après la connexion

Cette requête renvoie le salaire total pour tous les départements où le salaire total est supérieur à 100 000 $.

Principale différence :

  • Contexte de gestion : La clause WHERE gère les lignes individuelles, tandis que la clause HAVING gère les groupes.
  • Cible d'évaluation : La clause WHERE évalue la condition d'une seule ligne, tandis que la clause HAVING évalue les résultats agrégés du groupe.
  • Impact sur le résultat : La clause WHERE affecte les lignes incluses dans le résultat, tandis que la clause HAVING affecte les groupes inclus dans le résultat.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quels sont les différents types de partitionnement des données dans SQL (horizontal, vertical)? Quels sont les différents types de partitionnement des données dans SQL (horizontal, vertical)? Mar 13, 2025 pm 02:01 PM

L'article traite du partitionnement des données horizontal et vertical dans SQL, en se concentrant sur leur impact sur les performances et l'évolutivité. Il compare les avantages et les considérations pour choisir entre eux.

Comment gérer les contraintes de clés étrangères dans SQL Supprimer les lignes Comment gérer les contraintes de clés étrangères dans SQL Supprimer les lignes Mar 04, 2025 pm 05:52 PM

Cet article traite de la suppression des lignes avec des contraintes de clés étrangères dans les bases de données relationnelles. Il détaille les méthodes de gestion des violations des contraintes, y compris les suppressions en cascade, la restriction des suppressions et la définition de Nulls. L'article met l'accent

Comment utiliser les fonctions agrégées dans SQL pour résumer les données (SUM, AVG, COUNT, MIN, MAX)? Comment utiliser les fonctions agrégées dans SQL pour résumer les données (SUM, AVG, COUNT, MIN, MAX)? Mar 13, 2025 pm 01:50 PM

L'article explique comment utiliser les fonctions d'agrégats SQL (SUM, AVG, COUNT, MIN, MAX) pour résumer les données, détaillant leurs utilisations et leurs différences, et comment les combiner dans les requêtes. COMPAT DE CHARACTER: 159

Quels sont les risques de sécurité d'utiliser Dynamic SQL et comment puis-je les atténuer? Quels sont les risques de sécurité d'utiliser Dynamic SQL et comment puis-je les atténuer? Mar 13, 2025 pm 01:59 PM

L'article traite des risques de sécurité de Dynamic SQL, en se concentrant sur l'injection SQL, et fournit des stratégies d'atténuation telles que l'utilisation de requêtes paramétrées et de validation d'entrée.

Quels sont les différents niveaux d'isolement des transactions dans SQL (lire non engagée, lire engagée, lecture reproductible, sérialisable)? Quels sont les différents niveaux d'isolement des transactions dans SQL (lire non engagée, lire engagée, lecture reproductible, sérialisable)? Mar 13, 2025 pm 01:56 PM

L'article traite des niveaux d'isolement des transactions SQL: lire non engagée, lire engagée, lecture reproductible et sérialisable. Il examine leur impact sur la cohérence et les performances des données, notant qu'une isolation plus élevée garantit une plus grande cohérence mais MA

Quelles sont les propriétés acides des transactions dans SQL? Quelles sont les propriétés acides des transactions dans SQL? Mar 13, 2025 pm 01:54 PM

L'article traite des propriétés acides (atomicité, cohérence, isolement, durabilité) dans les transactions SQL, cruciale pour maintenir l'intégrité et la fiabilité des données.

Comment tester SQL Supprimer les lignes Comment tester SQL Supprimer les lignes Mar 04, 2025 pm 05:53 PM

Cet article détaille des stratégies de test efficaces pour les opérations de supprimer SQL. Il met l'accent sur la vérification de la suppression correcte des lignes via des comparaisons de données pré et post-trait, le nombre de lignes et les tests négatifs. Meilleures pratiques, y compris les sauvegardes, la transaction

Quelle est la différence entre les lignes de supprimer SQL et tronquer Quelle est la différence entre les lignes de supprimer SQL et tronquer Mar 04, 2025 pm 05:49 PM

Cet article compare les commandes de suppression et de tronçons de SQL. Supprimer supprime les lignes individuellement, permettant le retrait conditionnel et le retour en arrière de la transaction. Truncate est plus rapide, en supprimant toutes les lignes à la fois, mais manque de capacité de recul. Performances et données re

See all articles