Heim  >  Artikel  >  Datenbank  >  So schreiben Sie eine Abfrage nach doppelten Daten in SQL

So schreiben Sie eine Abfrage nach doppelten Daten in SQL

下次还敢
下次还敢Original
2024-04-28 09:30:20769Durchsuche

In SQL gibt es zwei Möglichkeiten, doppelte Daten abzufragen: Verwenden Sie die GROUP BY-Klausel, um die Daten zu gruppieren und die Anzahl der Wiederholungen für jede Gruppe zu zählen. Verwenden Sie die EXCEPT-Klausel, um eine Unterabfrage, die doppelte Daten enthält, von einer Unterabfrage auszuschließen, die alle Daten enthält. So fragen Sie doppelte Daten in SQL ab aggregiertes Ergebnis (z. B. Anzahl) für jede Gruppe.

Syntax: So schreiben Sie eine Abfrage nach doppelten Daten in SQL SELECT columns_list, COUNT(*) AS count FROM table_name GROUP BY columns_list

Verwendung: Verwenden Sie die Aggregatfunktion COUNT(*), um jeden zu berechnen Gruppenanzahl der Wiederholungen.

Zum Beispiel Abfrage nach wiederholter product_id in der Tabelle orders:

<code class="sql">SELECT product_id, COUNT(*) AS count
FROM orders
GROUP BY product_id
HAVING COUNT(*) > 1;</code>

2. EXCEPT-Klausel

  • Funktion: Von a Schließen Sie Zeilen aus einer Ergebnismenge aus, die in einer anderen Ergebnismenge enthalten sind.
  • Syntax: SELECT columns_list FROM table_name EXCEPT SELECT columns_list FROM table_nameSELECT column_list, COUNT(*) AS count FROM table_name GROUP BY column_list
  • 用法:使用 COUNT(*) 聚合函数计算每组的重复次数。

例如,查询 orders 表中重复出现的 product_id

<code class="sql">SELECT product_id
FROM orders
EXCEPT
SELECT product_id
FROM orders
GROUP BY product_id
HAVING COUNT(*) > 1;</code>

2. EXCEPT 子句

  • 功能:从一个结果集中排除另一个结果集中包含的行。
  • 语法: SELECT column_list FROM table_name EXCEPT SELECT column_list FROM table_name
  • 用法:将一个包含所有数据的子查询作为第一个选择列表,然后使用 EXCEPT 将包含重复数据的子查询作为第二个选择列表。

例如,查询 orders 表中只出现一次的 product_id

🎜Verwendung: 🎜Fügen Sie eine Unterabfrage mit allen Daten als erste Auswahlliste ein und verwenden Sie dann EXCEPT Verwenden Sie eine Unterabfrage mit doppelten Daten als zweite Auswahlliste. 🎜🎜Fragen Sie beispielsweise die <code>product_id ab, die nur einmal in der Tabelle orders vorkommt: 🎜rrreee

Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine Abfrage nach doppelten Daten in SQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn