SQL Server nám poskytuje několik agregačních funkcí, které mohou být použity k provedení různých typů výpočty na sadu hodnot a vrátí jednu hodnotu, která shrnout vstupní údaje nastavit. Tyto agregační funkce SQL Serveru zahrnují AVG (), COUNT (), SUM (), MIN () a MAX ().

v tomto článku projdeme využitím agregátní funkce MAX() a poskytneme několik příkladů využití funkce MAX ().,

Použití

SQL MAX() agregační funkce se používá k vrácení maximální hodnoty z poskytnutých číselné vyjádření nebo nejvyšší hodnota v pořadí řazení z předpokladu, charakter projevu.,) souhrnné funkce, jako je:

1
MAX( výraz )

Kde VŠECHNY možnosti, což je výchozí nastavení, znamená, že MAX (v) agregační funkce bude aplikována na všechny vyjádření hodnot a ODLIŠNÝCH možností ukazuje, že každá jedinečná hodnota budou považovány za v agregační funkci, která není použitelná pro MAX() funkce.,

tento Výraz zde mohou být předány MAX() agregační funkce může být jakýkoliv číselný, znak, uniqueidentifier nebo DateTime sloupce tabulky, vzhledem k tomu, že BIT typ dat nelze použít s MAX() agregační funkce.

funkce Max() agregátu může mít také konstantní hodnotu nebo jakýkoli aritmetický nebo řetězcový výraz, přičemž se vezme v úvahu, že funkce Max () agregátu bude ignorovat jakoukoli hodnotu NULL ve vstupním výrazu.,

hodnota, která je vrácena z SQL MAX() agregační funkce bude stejný jako Výraz, datový typ, a vrácená hodnota bude NULL, pokud je vstupní výraz se žádné řádky číst.,

6
7
VYTVOŘIT TABULKU MAXDemo
( ID INT IDENTITY PRIMÁRNÍ KLÍČ,
EmpName NVARCHAR (100),
EmpDateOfBirth datetime,
EmpSalary Decimal (6,2),
EmpIsActive trochu
)

Jakmile je tabulka vytvořena, jsme se vyplnit, že tabulky s testovacích dat z AdventureWorks2017 Microsoft testování databázových tabulek, pomocí T-SQL skript níže:

test prostředí je nyní připraven s tabulkou 316 záznamů.,14″>

1
2
3

SELECT MAX(ID) JAKO MaxID
OD MAXDemo

A vrácené hodnoty v našem demo tu bude 316, což je poslední přidáno ID zaměstnance, jak je uvedeno níže:

Další scénář, kde potřebujeme získat jméno zaměstnance, který se nachází na konci v abecedním pořadí.,ollation, a vrátí poslední hodnotu, jako v T-SQL prohlášení níže:

1
2
3
4

SELECT MAX(EmpName) JAKO LastEmp
OD MAXDemo

V našem případě, SELECT SQL MAX() agregační funkce vrátí poslední zaměstnanec, po třídění jmen zaměstnanců., Můžete si to představit jako třídění jména sestupně pak se Horní 1 jméno zaměstnance, jak je uvedeno níže:

SQL MAX() agregační funkce může být také použit s DateTime typ dat, kde se bude třídit DateTime hodnoty a vrátí poslední hodnotu z řazeny výsledky. V našem scénáři musíme získat nejmladšího zaměstnance s nejbližším datem narození.,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., Můžete si představit, MAX() agregační funkce jako třídění zaměstnanců datum narození hodnoty sestupně pak se Horní 1 datum narození, jak je uvedeno níže:

Vylepšení platů rozsahu zaměstnanci mohou být kontrolovány s různými typy výpočtů a agregačních operací, včetně SQL MAX() agregační funkce.,v id=“cab9fbe5ad“>

1
2
3
4

SELECT MAX(EmpIsActive) JAKO MaxActive
OD MAXDemo

VYBERTE provedení příkazu se nezdaří s chybová zpráva, která ukazuje, že datový typ bit nelze použít s MAX provozovatele, tam, kde to nedává žádný scénu vidět maximální hodnotu z trochu kolona, která už má pouze dvě hodnoty, 1 a 0., Chybové zprávy bude jako níže:

SQL MAX() agregační funkce mohou být také použity v klauzuli where jednoduchého SELECT dotazu., EmpIsActive = 1

předchozí VYBERTE dotaz vrátí všechny informace o zaměstnance, jejichž plat je největší plat v rámci všech zaměstnanců plat, kde to bude počítat, maximální hodnota mezd zaměstnanců a porovnat každý zaměstnanec plat s touto hodnotou, jak je uvedeno níže:

můžeme také použít SQL MAX() agregační funkce vrátí maximální hodnotu konkrétního sloupce s jinými sloupce hodnot, kde jsou všechny non-agregované sloupce by měly být uvedeny v klauzuli GROUP BY.,/div>

1
SELECT MAX(AllowanceValue) Jako MaxAllowance Z MAXDemo

vrácený výsledek bude NULL, protože tabulka nemá žádnou hodnotu v tomto sloupci, jak je uvedeno níže:

Závěr

je zřejmé z výše uvedených příkladů, jak můžeme použít SQL MAX() agregační funkce k dosažení určitého cíle v různých situacích, s různými typy dat, a v každém T-SQL query.,

  • 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.,
také přispívá svými tipy SQL v mnoha blogech.
Zobrazit všechny příspěvky od Ahmad Yaseen

Nejnovější příspěvky od Ahmad Yaseen (zobrazit všechny)
  • Jak sledovat Azure Data Factory – 15. ledna 2021
  • Pomocí Ovládání Zdroje v Azure Data Factory – 12. ledna, 2021
  • Pomocí Šablony v Azure Data Factory – 8. ledna 2021

Articles

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *