Ziel: Dieses Tutorial zielt darauf ab, zu verstehen.
SQL Server AVG -Funktion
Die AVG () -Funktion ist eine Aggregatfunktion, mit der Sie den Durchschnitt für einen bestimmten Wertsatz ermitteln können. Die Funktion ignoriert Nullwerte in der Eingabe.
Das Folgende zeigt die Syntax der AVG () -Funktion:
AVG ([alle | unterschiedlicher] Ausdruck)
[Over ([partition_by_clause] order_by_clause)]]]
Funktionsargumente
Die Funktion unterstützt die folgenden Argumente:
Der Funktionsrückgabewert hängt vom Eingabetatyp ab. Die folgende Tabelle zeigt den entsprechenden Ausgangstyp für einen bestimmten Eingangstyp.
Eingabetyp | Resultierender Typ |
Tinyint | int |
int | int |
Smallint | int |
Bigint | Bigint |
schweben und real | schweben |
Geld/Smallmone | Geld |
Dezimal | Dezimal |
Beispiel Verwendung
Sehen wir uns eine Beispielverwendung für die AVG () -Funktion an.
Beispiel 1 - Verwenden der AVG () mit unterschiedlich
Das folgende Beispiel erstellt eine Beispieltabelle und fügt einige zufällige Werte ein.
Datenbank fallen, wenn exists sample_db;
Datenbank erstellen sample_db;
verwenden sample_db;
Tabelle TBL erstellen (
zufälliger int,
);
In TBL einfügen (zufällig)
Werte (101), (69), (62), (99), (45), (80), (66), (61), (46), (28), (66);
In der folgenden Abfrage verwenden wir die AVG () -Funktion, um den Durchschnitt für die unterschiedlichen Werte in der Spalte zu bestimmen, wie gezeigt:
Wählen Sie AVG (eindeutig zufällig) als Durchschnitt aus TBL;
In diesem Fall berechnet die Funktion den Durchschnitt für eindeutige Werte in der Spalte. Der resultierende Wert ist wie gezeigt:
Beispiel 2 - Verwenden der AVG () -Funktion mit allen
Damit die Funktion doppelte Werte einbezieht, können wir das gesamte Schlüsselwort wie gezeigt verwenden:
Wählen Sie AVG (alle zufällig) als Durchschnitt von TBL;
In diesem Fall berücksichtigt die Funktion alle elf Werte anstelle von 10, wie zuvor angewendet.
NOTIZ: Abhängig vom resultierenden Typ kann der Wert abgerundet werden, was die Verwendung von allen und unverzichtbar macht.
Zum Beispiel:
101+69+62+99+45+80+66+61+46+28+66/11 = 65.7272727273
101+69+62+99+45+80+66+61+46+28/10 = 65.7
Wie Sie aus der obigen Ausgabe erkennen können, wird die Differenz hauptsächlich angezeigt, wenn der resultierende Typ ein schwimmender Punktwert ist.
Verwenden der AVG -Funktion mit Gruppen nach Klausel
Betrachten Sie die unten angegebene Tabelle:
Wir können den Durchschnittspreis für jedes Produkt durch einen bestimmten Hersteller berechnen, der die Gruppe für Klausel und AVG () -Funktion verwendet, wie unten dargestellt:
Wählen Sie Hersteller, AVG (Preis) als "Durchschnittspreis", Summe (Menge) als "auf Lager" aus
aus Produkten
Gruppe durch Hersteller;
Die obige Abfrage sollte die Zeilen in verschiedenen Partitionen basierend auf dem Hersteller organisieren. Anschließend berechnen wir den Durchschnittspreis für alle Produkte in jeder Partition.
Die resultierende Tabelle ist wie gezeigt:
Abschluss
In diesem Beitrag haben wir die Grundlagen der Arbeit mit der AVG.
Danke fürs Lesen!!