suchen
HeimDatenbankOracleDas Oracle-Beispiel erklärt gruppierte Daten im Detail

Dieser Artikel vermittelt Ihnen relevantes Wissen über Oracle, das hauptsächlich Probleme im Zusammenhang mit gruppierten Daten organisiert, sodass Daten in logische Gruppen unterteilt werden können, sodass aggregierte Berechnungen für jede Gruppe durchgeführt werden können. hoffe es hilft allen.

Das Oracle-Beispiel erklärt gruppierte Daten im Detail

Empfohlenes Tutorial: „Oracle Video Tutorial

Gruppierung ermöglicht die Aufteilung von Daten in logische Gruppen, sodass aggregierte Berechnungen für jede Gruppe durchgeführt werden können.

1. Erstellen Sie eine Gruppe

Gruppe wird mithilfe der GROUP BY-Klausel in der SELECT-Anweisung erstellt.

Beispiel:

SELECT vend_id, count(*) as num_prodsfrom productsgroup by vend_id;

Das Oracle-Beispiel erklärt gruppierte Daten im Detail

Dank der Verwendung von GROUP BY müssen Sie nicht jede zu bewertende und zu berechnende Gruppierung angeben, dies erfolgt automatisch. Die GROUP BY-Klausel weist Oracle an, die Daten zu gruppieren und eine Aggregation für jede Gruppe durchzuführen (und nicht für die gesamte Ergebnismenge).

Bevor Sie GROUP BY verwenden, sind unten einige wichtige Regeln aufgeführt, die Sie über die Verwendung kennen müssen.

  • Die GROUP BY-Klausel kann so viele Spalten wie nötig enthalten. Es ermöglicht eine verschachtelte Gruppierung und ermöglicht so eine genauere Kontrolle darüber, wie Daten gruppiert werden.
  • Wenn Sie in der Group by-Klausel verschachtelte Gruppen haben, werden die Daten in der zuletzt angegebenen Gruppe zusammengefasst. Mit anderen Worten: Beim Erstellen einer Gruppierung werden alle angegebenen Spalten gemeinsam ausgewertet (Daten werden also nicht für jede einzelne Spalte abgerufen).
  • Jede in der Gruppe nach aufgeführte Spalte muss eine abgerufene Spalte oder ein gültiger Ausdruck (keine Aggregatfunktion) sein. Wenn ein Ausdruck in „select“ verwendet wird, muss derselbe Ausdruck in „group by“ angegeben werden. Aliase können nicht verwendet werden.
  • Mit Ausnahme von Aggregatberechnungsanweisungen sollte jede Spalte in der SELECT-Anweisung in der GROUP BY-Klausel erscheinen.
  • Wenn die Gruppierungsspalte eine Spalte mit einem NULL-Wert enthält, wird NULL als Gruppierung zurückgegeben. Wenn mehrere Zeilen mit NULL-Werten vorhanden sind, werden sie alle gruppiert.
  • Die GROUP BY-Klausel muss nach der WHERE-Klausel und vor der ORDER BY-Klausel stehen.

2. Filtergruppierung

Where-Klausel wird normalerweise auch für die Zeilenfilterung verwendet. Allerdings gilt „wo“ hier nicht, da „wo“ bestimmte Zeilen filtern und nicht gruppieren kann. Tatsächlich kann where nicht auf die Gruppierung angewendet werden.

Oracle bietet hierfür eine weitere Klausel: HAVING. Der einzige Unterschied zwischen der Where-Klausel und der Have-Klausel besteht darin, dass Where Zeilen filtert, während Have Filtergruppen hat.

**Tipps: **Having unterstützt alle Where-Operatoren

Die Regeln für Where und Have sind genau die gleichen, nur mit unterschiedlichen Schlüsselwörtern.

Beispiel:

SELECT cust_id, COUNT(*) AS ordersFROM ordersGROUP BY cust_idHAVING COUNT(*) >= 2;

Das Oracle-Beispiel erklärt gruppierte Daten im Detail

Hinweis: Der Unterschied zwischen haben und wo

Betrachten Sie den Unterschied zwischen haben und wo aus einem anderen Blickwinkel: Hier erfolgt die Filterung vor den Daten, während die Filterung vorher erfolgt Nach der Datengruppierung. Dies ist ein wichtiger Unterschied. Durch die where-Klausel gelöschte Zeilen werden nicht in die Gruppierung einbezogen. Dadurch können sich die berechneten Werte basierend auf den in der Have-Klausel verwendeten ändern, was wiederum Auswirkungen darauf haben kann, welche Gruppen gefiltert werden.

Beispiel für die gemeinsame Verwendung der Klausel „Where“ und „Having“:

select vend_id, count(*), as num_prodsfrom productswhere prod_price>=10group by vend_idhaving count(*) > 2;

Das Oracle-Beispiel erklärt gruppierte Daten im Detail

SELECT vend_id, COUNT(*) AS num_prodsFROM productsGROUP BY vend_idHAVING COUNT(*) >= 2;

Das Oracle-Beispiel erklärt gruppierte Daten im Detail

3. Gruppieren und Sortieren

Der Unterschied zwischen „group by“ und „order by“ ist enorm, auch wenn sie normalerweise verwendet werden zur Vervollständigung Das Gleiche.

In der folgenden Tabelle wird der Unterschied zwischen Sortieren nach und Gruppieren nach beschrieben Gruppierungsreihenfolge

darf jede Spalte verwenden (auch nicht ausgewählte Spalten) Nie erforderlichErforderlich, wenn Spalten (oder Ausdrücke) mit verwendet werden Aggregatfunktionen
darf nur ausgewählte Spalten oder Ausdrücke verwenden und verwendet definitiv alle ausgewählten Spaltenausdrücke

时常,你会发现使用GROUP BY分组的数据的确是以分组顺序输出的。但是并非总是如此,并且实际上SQL规范也并没有如此要求。而且你实际上可能希望它以不同于分组的方式进行排序。你以一种方式对数据进行分组(以获得特定于分组的聚合值),并不意味着你也希望输出以相同的方式进行排序。总是应该还提供一个显式的ORDER BY子句,即使它与GROUP BY子句完全相同。

提示:不要忘记ORDER BY

通常,无论何时使用GROUP BY子句,还应该指定一个ORDER BY子句,这是确保正确地对数据进行排序的唯一方式。永远不要依靠GROUP BY对数据排序。

为了演示同时使用GROUP BY和ORDER BY的情况,让我们看一个示例。下面的SELECT语句类似于之前使用的SELECT语句。它用于检索总价在50以上(含50)的所有订单的订单号和订单总价:

SELECT order_num, SUM(quantity*item_price) AS ordertotalFROM orderitemsGROUP BY order_numHAVING SUM(quantity*item_price) >= 50;

Das Oracle-Beispiel erklärt gruppierte Daten im Detail

要按订单总价对输出进行排序,只需添加一个ORDER BY子句,如下:

SELECT order_num, SUM(quantity*item_price) AS ordertotalFROM orderitemsGROUP BY order_numHAVING SUM(quantity*item_price) >= 50ORDER BY ordertotal;

Das Oracle-Beispiel erklärt gruppierte Daten im Detail

4、select子句排序

select子句和它们的顺序

子句 描述 是否必须
select 要返回的列或表达式 Y
from 要从中检索数据的表 Y(在Oracle中是必须的;在大多数其他的DBMS中则不是)
where 行级过滤(分组前过滤) N
group by 分组规范 仅当按分组计算聚合值时是必须的
having 分组级过滤(分组后过滤) N
order by 输出的排列顺序 N

推荐教程:《Oracle视频教程

Das obige ist der detaillierte Inhalt vonDas Oracle-Beispiel erklärt gruppierte Daten im Detail. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Dieser Artikel ist reproduziert unter:CSDN. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Oracle: Von Datenbanken bis zu Cloud -DienstenOracle: Von Datenbanken bis zu Cloud -DienstenMay 02, 2025 am 12:05 AM

Die Entwicklung von Oracle von der Datenbank zu Cloud -Diensten zeigt seine starke technische Stärke und Markteinsicht. 1. Oracle stammt aus den 1970er Jahren und ist berühmt für sein relationales Datenbankmanagementsystem und hat innovative Funktionen wie PL/SQL auf den Markt gebracht. 2. Der Kern der Oracle-Datenbank ist das relationale Modell und die SQL-Optimierung, die die Architektur mit mehreren Mietern unterstützt. 3. Oracle Cloud -Dienste bieten IaaS, PaaS und SaaS über OCI und autonomousDatabase können gut abschneiden. 4. Bei Verwendung von Oracle müssen Sie auf das komplexe Lizenzmodell, die Leistungsoptimierung und die Datensicherheitsprobleme in der Cloud -Migration achten.

Oracle und MySQL: Erforschung von DatenverwaltungsansätzenOracle und MySQL: Erforschung von DatenverwaltungsansätzenMay 01, 2025 am 12:13 AM

Oracle eignet sich für Anwendungen auf Unternehmensebene, die hohe Leistung und komplexe Abfragen erfordern, und MySQL eignet sich für Webanwendungen, die schnell entwickelt und bereitgestellt werden. 1. Oracle unterstützt komplexe Transaktionsverarbeitung und hohe Verfügbarkeit, geeignet für finanzielle und große ERP -Systeme. 2.Mysql betont die Benutzerfreundlichkeit und die Open-Source-Unterstützung und wird in kleinen und mittelgroßen Unternehmen und Internetprojekten häufig verwendet.

MySQL vs. Oracle: Ein Blick auf die BenutzererfahrungMySQL vs. Oracle: Ein Blick auf die BenutzererfahrungApr 30, 2025 am 12:12 AM

Die Unterschiede in der Benutzererfahrung zwischen MySQL und Oracle spiegeln sich hauptsächlich in: 1. MySQL wider, einfach zu bedienen, für schnellen Zugriff und hohe Flexibilitätsszenarien geeignet. 2. Oracle verfügt über leistungsstarke Funktionen, die für Szenarien geeignet sind, die Unterstützung auf Unternehmensebene erfordern. Open Source und Free -Funktionen von MySQL ziehen Startups und einzelne Entwickler an, während die komplexen Funktionen und Werkzeuge von Oracle den Anforderungen großer Unternehmen erfüllen.

MySQL und Oracle: Erforschung von Leistung und SkalierbarkeitMySQL und Oracle: Erforschung von Leistung und SkalierbarkeitApr 29, 2025 am 12:12 AM

Der Unterschied zwischen MySQL und Oracle in Bezug auf Leistung und Skalierbarkeit ist: 1. MySQL ist bei kleinen bis mittleren Datensätzen besser funktioniert, geeignet für schnelles Skalieren und effizientes Lesen und Schreiben; 2. Oracle hat mehr Vorteile bei der Behandlung großer Datensätze und komplexer Abfragen, die für eine hohe Verfügbarkeit und komplexe Geschäftslogik geeignet sind. MySQL erstreckt sich über Master-Sklaven-Replikationen und Sharding-Technologien, während Oracle eine hohe Verfügbarkeit und Skalierbarkeit durch RAC erzielt.

Was Oracle -Software macht: Schlüsselfunktionen und FunktionenWas Oracle -Software macht: Schlüsselfunktionen und FunktionenApr 28, 2025 am 12:08 AM

Zu den wichtigsten Merkmalen der Oracle-Software gehören Multi-Mieter-Architektur, erweiterte Analyse- und Data-Mining, Echtzeit-Anwendungsclustering (RAC) sowie automatisierte Verwaltung und Überwachung. 1) Eine Architektur mit mehreren Mietern ermöglicht die Verwaltung mehrerer unabhängiger Datenbanken in einer Datenbankinstanz, die das Management vereinfacht und die Kosten senkt. 2) Advanced Analytics und Data Mining Tools wie Oracle Advanced Analytics und Oracledatamining helfen dabei, Erkenntnisse aus Daten zu extrahieren. 3) Echtzeit-Anwendungscluster (RAC) bietet eine hohe Verfügbarkeit und Skalierbarkeit und verbesserte Systemfehlertoleranz und Leistung. 4) automatisierte Management- und Überwachungstools wie Oracle EnterpriseManager (OEM), um tägliche Wartungsaufgaben zu automatisieren und Zahlen in Echtzeit zu überwachen

Oraces Auswirkungen: Datenmanagement und darüber hinausOraces Auswirkungen: Datenmanagement und darüber hinausApr 27, 2025 am 12:11 AM

Oracle hat einen tiefgreifenden Einfluss auf die Bereiche Datenverwaltung und Unternehmensanwendungen. Die Datenbank ist bekannt für ihre Zuverlässigkeit, Skalierbarkeit und Sicherheit und wird in Branchen wie Finanzen, medizinischer Versorgung und Regierung häufig eingesetzt. Der Einfluss von Oracle hat sich auch auf Middleware- und Cloud -Computing -Felder wie WebLogicsServer und OraclecloudInfrastructure (OCI) erweitert, die innovative Lösungen bieten. Trotz des Wettbewerbs im Open -Source -Datenbank- und Cloud -Computing -Markt behält Oracle seine führende Position durch kontinuierliche Innovation bei.

Oracle: Erforschen der Mission und des Wertes des UnternehmensOracle: Erforschen der Mission und des Wertes des UnternehmensApr 26, 2025 am 12:06 AM

Die Mission von Oracle ist es, "Menschen zu helfen, den Wert von Daten zu erkennen", und seine Grundwerte gehören: 1) Kunde zuerst, 2) Integrität, 3) Innovation und 4) Teamwork. Diese Werte leiten die strategischen Entscheidungsfindung und die Geschäftsingreen zwischen Oracle auf dem Markt.

Die Kernfunktion von Oracle: Bereitstellung von DatenbanklösungenDie Kernfunktion von Oracle: Bereitstellung von DatenbanklösungenApr 25, 2025 am 12:06 AM

Die Oracle -Datenbank ist ein relationales Datenbankverwaltungssystem, das SQL- und Objekt -Relationalmodelle unterstützt, um Datensicherheit und hohe Verfügbarkeit bereitzustellen. 1. Die Kernfunktionen der Oracle -Datenbank umfassen Datenspeicher, Abruf, Sicherheit und Sicherung und Wiederherstellung. 2. Sein Arbeitsprinzip umfasst mehrschichtige Speicherstruktur, MVCC-Mechanismus und Optimierer. 3. Grundlegende Verwendungen umfassen das Erstellen von Tabellen, das Einfügen und Abfragen von Daten. Fortgeschrittene Verwendungen umfassen gespeicherte Verfahren und Auslöser. 4. Die Leistungsoptimierungsstrategien umfassen die Verwendung von Indizes, optimierte SQL -Anweisungen und Speicherverwaltung.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

PHPStorm Mac-Version

PHPStorm Mac-Version

Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung