Funkce ISNULL SQL v příkazech případu

V tomto blogu budeme diskutovat o příkazu CASE , který můžete použít pro zpracování více logických operací. Probereme také funkci ISNULL SQL, která vám umožní vrátit náhradní hodnotu v případě, že existují výrazy, které mají hodnotu NULL .

Příkaz CASE a funkce ISNULL jsou velmi užitečné při práci s kódy, které vyžadují mnoho logických operací a pro rychlé nahrazení pevných nebo zadaných hodnot výrazem.

Příkaz CASE v SQL je jako použití příkazu IF ELSE . S největší pravděpodobností je však podobný příkazu SWITCH , který používáme v jazyce DAX . Na druhou stranu funkce ISNULL slouží k nahrazení hodnoty NULL konkrétní hodnotou, kterou chcete použít.

Obsah

Použití příkazu CASE v SQL

Předpokládejme, že máme sloupce ProductName a Sales Amount .

Funkce ISNULL SQL v příkazech případu

Poté chceme vytvořit další sloupec s názvem Popis .

Funkce ISNULL SQL v příkazech případu

Chceme také přidat logická tvrzení, která zobrazí ' Levné ', pokud je částka prodeje menší nebo rovna 5 , potom ' Není tak levné ' mezi 6 a 100 . Pokud je hodnota větší než sto, zobrazí se ' Drahé '.

Funkce ISNULL SQL v příkazech případu

V tomto příkladu jsme použili příkaz SELECT k výběru sloupce, který chceme zobrazit. Poté máme příkaz CASE , který obsahuje logické operace, které jsme zmínili dříve.

Při použití příkazu CASE se příkazy WHEN a THEN vždy používají k označení logických operací, které chceme implementovat ve vybraném sloupci. Příkaz ELSE slouží k nastavení výchozí hodnoty, pokud nebyly splněny sady logických operací.

Na konci příkazu CASE máme END AS a vedle něj název sloupce . Tím se vytvoří nový sloupec s názvem Popis s hodnotami založenými na logických operacích, které jsme přidali do příkazu CASE .

Využití funkce ISNULL SQL

Funkce ISNULL slouží ke kontrole, zda jsou ve vybraném sloupci nějaké hodnoty NULL , a jejich nahrazení libovolnou zadanou hodnotou. Nyní si představme, že máme následující sloupce s hodnotami NULL .

Funkce ISNULL SQL v příkazech případu

Ve výše uvedeném příkladu jsou všechny hodnoty NULL nahrazeny hodnotami ' Neznámý '. K vytvoření tohoto příkladu se používají následující řádky kódu.

Funkce ISNULL SQL v příkazech případu

Při používání funkce ISNULL SQL byste měli začít výběrem sloupce MiddleName pomocí příkazu SELECT .

Poté byste měli pomocí funkce ISNULL zkontrolovat sloupec MiddleName , který je uveden v závorkách, a nahradit jakoukoli hodnotu NULL v něm hodnotou ' Neznámý '.

Funkce AS slouží k vytvoření nového sloupce, kterým je v tomto případě MiddleName_New .

Vezměte na vědomí, že funkce ISNULL nahradí hodnoty NULL pouze v případě, že určitá hodnota není rovna hodnotě NULL . Potom vrátí stejnou hodnotu ze sloupce, který jste zadali ve funkci ISNULL .

Dále použiji příkaz CASE a funkce ISNULL v SSMS , abyste viděli, jak to vlastně funguje. 

CASE prohlášení v SSMS

Začněme výběrem sloupce Jméno z Person.Person . Všimněte si, že v tomto příkladu není nutné vybírat sloupec. Toto je pouze pro vaši informaci.

Funkce ISNULL SQL v příkazech případu

Po vyvolání tohoto sloupce vytvořte sloupec, který bude zobrazovat hodnoty bez ohledu na to, zda je křestní jméno Kim nebo ne, pomocí příkazu CASE . Chcete-li to provést, postupujte podle níže uvedeného příkladu.

Funkce ISNULL SQL v příkazech případu

Ve výše uvedeném ukázkovém kódu jsme přidali podmínku pomocí příkazu CASE , kde pokud je jméno rovno ' Kim , zobrazí se ' Ano ', a pokud ne, zobrazí se ' Ne '.

Pro tento příklad jsem také vytvořil nový sloupec s názvem ' IsKim ' pomocí funkce END AS . Výsledek viz příklad níže.

Funkce ISNULL SQL v příkazech případu

Nyní uveďme další příklad pomocí příkazu CASE použitím některých podmínek na sloupec TaxAmt z tabulky Sales.SalesOrderHeader .

Nejprve pomocí následujícího řádku kódu přeneseme prvních 100 sloupců z Sales.SalesOrderHeader a vyhledáme sloupec TaxAmt .

Funkce ISNULL SQL v příkazech případu

Poté začněme aplikovat podmínky pro sloupec TaxAmt pomocí příkazu CASE pomocí níže uvedeného příkladu.

Funkce ISNULL SQL v příkazech případu

Podobně jako v předchozím příkladu jsme začali výběrem sloupce, na který chceme aplikovat naše podmínky – v tomto případě je to sloupec TaxAmt .

Poté jsme do příkazu CASE přidali podmínky, kdy pokud je TaxAmt menší nebo roven 500, zobrazí se hodnota ' Perfektní .' Pokud je TaxAmt menší nebo roven 2000 , zobrazí se hodnota ' Okay '.

Kromě toho, pokud nebyly splněny podmínky, zobrazí se hodnota ' Not Good ' . Na konci výpisu jsem vytvořil nový sloupec s názvem TaxClass .

Funkce ISNULL SQL v příkazech případu

Takto využíváme příkaz CASE v SQL . Pamatujte, že můžete nastavit tolik podmínek, kolik chcete. Jen se ujistěte, že používáte příkazy WHEN a THEN a také funkci END AS k vygenerování nového sloupce, kde se zobrazí výsledky.

Funkce ISNULL SQL v SSMS

V tomto příkladu použiji stejnou tabulku z předchozího příkladu. Poté ukážu, jak můžete tuto funkci použít k nahrazení hodnot NULL ve sloupci CurrencyRateID

Funkce ISNULL SQL v příkazech případu

Po výběru tabulky z výše uvedeného příkladu můžeme ve sloupci CurrencyRateID vidět hodnoty NULL . Nyní chci tyto hodnoty NULL nahradit „ 1 “. Chcete-li to provést, použijte níže uvedený příklad.

Funkce ISNULL SQL v příkazech případu

Chcete-li změnit hodnoty NULL v konkrétním sloupci, musíme nejprve vybrat sloupec, který má hodnoty NULL. V tomto případě je to CurrencyRateID . Poté použijeme funkci ISNULL a vybereme sloupec, který bude kontrolován funkcí ISNULL , což je CurrencyRateID .

Musíme také deklarovat náhradní hodnotu, kterou chceme použít – pro tento příklad jsem použil ' 1 '. Nakonec přidáme funkci AS pro vytvoření nového sloupce s názvem NewRate .

V důsledku toho byly všechny hodnoty NULL ve sloupci NewRate nahrazeny ' 1 ' a ty, které neměly hodnotu NULL , zůstaly stejné. Kromě toho můžete také změnit hodnotu NULL pomocí sloupce. Můžete to udělat podle níže uvedeného příkladu.

Funkce ISNULL SQL v příkazech případu

Pomocí stejné syntaxe z předchozího příkladu jsme právě přidali SalesOrderID vedle CurrencyRateID jako naši referenci před funkci ISNULL . Poté jsme změnili hodnotu nahrazení pomocí SalesOrderID . Tento příkaz jednoduše zkontroluje hodnoty NULL pod CurrencyRateID a nahradí je hodnotami ze sloupce SalesOrderID .

Závěr

Stručně řečeno, naučili jste se používat příkaz CASE a funkci ISNULL spolu se správnou syntaxí v SQL . Také jste se dozvěděli, že do příkazu CASE můžete zahrnout tolik logických podmínek, kolik chcete. Pamatujte, že příkaz CASE je podobný příkazu SWITCH nebo IF ELSE .

Kromě funkce ISNULL jste se dozvěděli, že existují různé způsoby, jak nahradit hodnotu NULL při použití této funkce, což je pomocí pevné hodnoty nebo sloupce.

Vše nejlepší,

Hafiz






Vytvoření tabulky data v LuckyTemplates

Vytvoření tabulky data v LuckyTemplates

Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.

LuckyTemplates Mobile Reporting Tipy a techniky

LuckyTemplates Mobile Reporting Tipy a techniky

Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.

Profesionální servisní analytické zprávy v LuckyTemplates

Profesionální servisní analytické zprávy v LuckyTemplates

V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.

Bežné funkcie SQL: Prehľad

Bežné funkcie SQL: Prehľad

Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.

Vytvoření šablony LuckyTemplates: Průvodce a tipy

Vytvoření šablony LuckyTemplates: Průvodce a tipy

V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.

Parametry pole a malé násobky v LuckyTemplates

Parametry pole a malé násobky v LuckyTemplates

V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.

LuckyTemplates Rank a vlastní seskupení

LuckyTemplates Rank a vlastní seskupení

V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

V tomto tutoriálu se budu zabývat konkrétní technikou, jak zobrazit kumulativní součet pouze do určitého data ve vašich vizuálech v LuckyTemplates.

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Naučte se vytvářet a přizpůsobovat Bullet grafy v LuckyTemplates, které se používají hlavně pro měření výkonu oproti cílovým nebo předchozím rokům.