La façon d'interroger les données en double dans SQL consiste à utiliser la clause GROUP BY pour regrouper les colonnes requises. Utilisez la clause HAVING pour spécifier les conditions de filtre pour les données en double.
Commande SQL pour interroger les données en double
Comment interroger les données en double
Dans SQL, vous pouvez interroger les données en double en utilisant GROUP BY
et HAVING pour y parvenir. <code>GROUP BY
和 HAVING
子句来实现。
步骤
GROUP BY
子句对所需列进行分组。HAVING
子句指定重复数据的过滤条件。语法
<code class="sql">SELECT column_name(s) FROM table_name GROUP BY column_name(s) HAVING COUNT(*) > 1;</code>
示例
假设有一个名为 students
的表,包含如下数据:
student_id | name |
---|---|
1 | John Doe |
2 | Jane Smith |
3 | John Doe |
4 | Mary Johnson |
要查询 students
表中重复的 name
字段,可以使用以下查询:
<code class="sql">SELECT name FROM students GROUP BY name HAVING COUNT(*) > 1;</code>
输出
<code>John Doe</code>
其他示例
orders
表中重复的 product_id
字段:<code class="sql">SELECT product_id FROM orders GROUP BY product_id HAVING COUNT(*) > 1;</code>
employees
表中重复的 email
字段并显示重复次数:<code class="sql">SELECT email, COUNT(*) AS count FROM employees GROUP BY email HAVING COUNT(*) > 1;</code>
注意
COUNT(*)
函数计算每个组中的行数。HAVING
子句中的条件可以基于聚合函数(如 COUNT
、SUM
和 AVG
GROUP BY
. 🎜HAVING
pour spécifier les conditions de filtre pour les données en double. 🎜students
contenant les données suivantes : 🎜student_id | nom |
---|---|
1 | John Doe |
2 | Jane Smith |
3 | John Doe |
Mary Johnson |
nom
en double dans la table étudiants
>, vous pouvez utiliser la requête suivante : 🎜rrreee🎜🎜Output🎜🎜rrreee🎜🎜Autres exemples🎜🎜product_id
répétés dans les commandes code> table :🎜🎜rrreee<ul><li>Interrogez le champ <code>email
répété dans la table employés
et affichez le nombre de répétitions : 🎜🎜rrreee🎜🎜Note🎜 🎜COUNT(*)
compte le nombre de lignes dans chaque groupe. 🎜HAVING
peuvent être basées sur des fonctions d'agrégation (telles que COUNT
, SUM
et AVG
>) . 🎜🎜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!