SQL Server bietet uns mehrere Aggregatfunktionen, die verwendet werden können, um verschiedene Arten von Berechnungen für eine Reihe von Werten durchzuführen und einen einzelnen Wert zurückzugeben, der den Eingabedatensatz zusammengefasst hat. Diese SQL Server Aggregatfunktionen umfassen AVG(), COUNT(), SUM (), MIN () und MAX ().

In diesem Artikel werden wir die Verwendung der MAX () – Aggregatfunktion durchgehen und mehrere Beispiele für die Verwendung der MAX () – Funktion bereitstellen.,

Die Aggregatfunktion SQL MAX () wird verwendet, um den Maximalwert aus dem bereitgestellten numerischen Ausdruck oder den höchsten Wert in der Sortierfolge aus dem bereitgestellten Zeichenausdruck zurückzugeben.,) aggregatfunktion ist wie folgt:

1
MAX( expression )

Wobei die Option ALL, die die Standardoption ist, angibt, dass die Aggregatfunktion MAX() auf alle Ausdruckswerte angewendet wird und die Option DISTINCT angibt, dass jeder eindeutige Wert in der Aggregatfunktion berücksichtigt wird, die für die Funktion MAX() nicht anwendbar ist.,

Der Ausdruck hier kann an die MAX() Aggregatfunktion übergeben werden, kann eine beliebige numerische, Zeichen -, uniqueidentifier – oder DateTime-Tabellenspalte sein, wenn man bedenkt, dass der Bitdatentyp nicht mit der MAX() Aggregatfunktion verwendet werden kann.

Die Aggregatfunktion MAX() kann auch einen konstanten Wert oder einen beliebigen arithmetischen oder Zeichenfolgenausdruck annehmen, wobei berücksichtigt wird, dass die Aggregatfunktion MAX () jeden Nullwert im Eingabeausdruck ignoriert.,

Der Wert, der von der SQL MAX () – Aggregatfunktion zurückgegeben wird, entspricht dem Datentyp des Ausdrucks, und der zurückgegebene Wert ist NULL, wenn der Eingabeausdruck keine Zeilen zum Lesen hat.,

6
7
CREATE TABLE MAXDemo
( ID INT IDENTITY PRIMARY KEY,
EmpName NVARCHAR (100),
Empdateofgeburt datetime,
EmpDatary Decimal (6,2),
EmpIsActive bit

div>

)

Sobald die Tabelle erstellt wurde, füllen wir diese Tabelle mit den Testdaten aus den AdventureWorks2017 Microsoft testing database tables mit dem folgenden T-SQL-Skript aus:

Die Testumgebung ist jetzt mit einer Tabelle mit 316 Datensätzen bereit.,14″>

1
2
3

SELECT MAX(ID) AS MaxID
AUS MAXDemo
GO

Und die zurückgegebenen Wert in unserem demo-hier wird 316, das ist der Letzte Hinzugefügt, Mitarbeiter-ID, wie unten gezeigt:

ein Weiteres Szenario, in dem wir brauchen, um den Namen des Mitarbeiters, der sich am Ende der alphabetischen Reihenfolge.,und gibt den letzten Wert zurück, wie in der T-SQL-Anweisung unten:

1
2
3
4

SELECT MAX(EmpName) AS LastEmp
FROM MAXDemo
GO

In unserem Fall ist hier die SELECT-Anweisung mit der SQL MAX() Aggregatfunktion wird der letzte Mitarbeiter zurück, nach dem Sortieren der Mitarbeiternamen., Sie können sich vorstellen, dass es die Namen absteigend sortiert und dann den obersten 1-Mitarbeiternamen erhält, wie unten gezeigt:

Die SQL MAX () – Aggregatfunktion kann auch mit dem Datentyp DateTime verwendet werden, in dem die DateTime-Werte sortiert und der letzte Wert aus den sortierten Ergebnissen zurückgegeben wird. In unserem Szenario müssen wir den jüngsten Mitarbeiter mit dem nächsten Geburtsdatum erhalten.,ggregate function, as in the T-SQL SELECT statement below:

1
2
3
4

SELECT MAX(EmpDateOfBirth) AS YoungestEmp
FROM MAXDemo
GO

The previous SELECT statement with the SQL MAX() aggregate function will sort the employees’ birthdate and return the latest birthdate value., Sie können sich vorstellen, dass die MAX () – Aggregatfunktion die Geburtsdatenwerte der Mitarbeiter absteigend sortiert und dann das oberste 1-Geburtsdatum erhält, wie unten gezeigt:

Die Gehaltsskala der Mitarbeiter kann mit verschiedenen Arten von Berechnungen und Aggregatoperationen einschließlich der SQL MAX () – Aggregatfunktion überprüft werden.,v id=“cab4fbe5ad“>

1
2
3
4

WÄHLEN SIE MAX(EmpIsActive) ALS maxActive
VON MAXDemo
GO

Die Ausführung der SELECT-Anweisung schlägt fehl, mit einer Fehlermeldung, die anzeigt, dass das Datentypbit nicht mit MAX operator verwendet werden kann, wo es keine Szene macht, um den Maximalwert aus einer Bitspalte zu sehen, die bereits nur zwei Werte hat, 1 und 0., Die Fehlermeldung lautet wie folgt:

Die SQL MAX() Aggregatfunktion kann auch innerhalb der WHERE Klausel einer einfachen SELECT Abfrage verwendet werden., EmpIsActive = 1

Die vorherige Auswahlabfrage gibt alle Informationen über den Mitarbeiter zurück, dessen Gehalt das größte Gehalt innerhalb des Gehalts aller Mitarbeiter ist, wobei der maximale Wert der Gehälter der Mitarbeiter berechnet und das Gehalt jedes Mitarbeiters mit diesem Wert verglichen wird, wie unten gezeigt:

Wir können auch die SQL MAX ()-Aggregatfunktion verwenden, um den Maximalwert einer bestimmten Spalte mit anderen Spaltenwerten zurückzugeben, wobei alle nicht aggregierten Spalten in der GROUP BY-Klausel aufgeführt sein sollten.,/div>

1
WÄHLEN SIE MAX(AllowanceValue) Als MaxAllowance AUS MAXDemo

Das zurückgegebene Ergebnis ist NULL, da die Tabelle in dieser Spalte keinen Wert hat, wie unten gezeigt:

Aus diesen obigen Beispielen wird deutlich, wie wir die SQL MAX ()-Aggregatfunktion verwenden können, um ein bestimmtes Ziel in verschiedenen Szenarien mit unterschiedlichen Datentypen und innerhalb jeder T-SQL-Abfrage zu erreichen.,

  • Author
  • Recent Posts
Ahmad Yaseen is a Microsoft Big Data engineer with deep knowledge and experience in SQL BI, SQL Server Database Administration and Development fields.
He is a Microsoft Certified Solution Expert in Data Management and Analytics, Microsoft Certified Solution Associate in SQL Database Administration and Development, Azure Developer Associate and Microsoft Certified Trainer.,
Außerdem trägt er mit seinen SQL-Tipps in vielen Blogs bei.
Alle Beiträge von Ahmad Yaseen anzeigen

Neueste Beiträge von Ahmad Yaseen (alle anzeigen)
  • So überwachen Sie Azure Data Factory – 15. 8. Januar 2021

Articles

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.