ISNULL Функція SQL у операторах Case

У цьому блозі ми обговоримо оператор CASE , який можна використовувати для обробки кількох логічних операцій. Ми також обговоримо функцію ISNULL SQL, яка дозволить вам повертати значення заміни, якщо є вирази, які мають значення NULL .

Оператор CASE та функція ISNULL дуже корисні в роботі з кодами, які потребують багатьох логічних операцій, а також для швидкої заміни фіксованих чи заданих значень у вираз.

Оператор CASE в SQL схожий на використання оператора IF ELSE . Проте, швидше за все, він схожий на оператор SWITCH , який ми використовуємо в DAX . З іншого боку, функція ISNULL призначена для заміни значення NULL на певне значення, яке ви хочете використовувати.

Зміст

Використання оператора CASE в SQL

Припустімо, що у нас є стовпці ProductName і Sales Amount .

ISNULL Функція SQL у операторах Case

Потім ми хочемо створити додатковий стовпець під назвою Description .

ISNULL Функція SQL у операторах Case

Ми також хочемо додати логічні твердження, які відображатимуть « Дешево », якщо сума ��родажів менше або дорівнює 5 , а потім « Не так дешево » від 6 до 100 . Якщо значення більше за сто, відображатиметься « Дорого ».

ISNULL Функція SQL у операторах Case

У цьому прикладі ми використали оператор SELECT , щоб вибрати стовпець, який ми хочемо переглянути. Після цього у нас є оператор CASE , який містить логічні операції, про які ми згадували раніше.

Під час використання оператора CASE оператори WHEN і THEN завжди використовуються для вказівки логічних операцій, які ми хочемо реалізувати у вибраному стовпці. Оператор ELSE призначений для встановлення значення за замовчуванням, якщо набір логічних операцій не виконано.

У кінці оператора CASE ми маємо END AS і назву стовпця поруч із ним. Це створить новий стовпець під назвою Опис зі значеннями на основі логічних операцій, які ми додали в операторі CASE .

Використання функції ISNULL SQL

Функція ISNULL призначена для перевірки наявності у вибраному стовпці значень NULL і заміни їх на будь-яке вказане значення. Тепер візуалізуємо, що у нас є наступні стовпці зі значеннями NULL .

ISNULL Функція SQL у операторах Case

У наведеному вище прикладі всі значення NULL замінено значеннями « Невідомо ». Для створення цього прикладу використовуються наступні рядки коду.

ISNULL Функція SQL у операторах Case

Використовуючи функцію ISNULL SQL, вам слід почати з вибору стовпця MiddleName за допомогою оператора SELECT .

Після цього вам слід скористатися функцією ISNULL , щоб перевірити стовпець MiddleName , указаний у дужках, і замінити будь-яке значення NULL у ньому на значення « Невідоме ».

Функція AS призначена для створення нового стовпця, який у цьому випадку є MiddleName_New .

Зверніть увагу, що функція ISNULL замінить значення NULL , лише якщо певне значення не дорівнює NULL . Тоді він поверне те саме значення зі стовпця, яке ви вказали у функції ISNULL .

Далі я використаю оператор CASE та функції ISNULL у SSMS , щоб ви побачили, як це насправді працює. 

Оператор CASE в SSMS

Почнемо з вибору стовпця FirstName у Person.Person . Зверніть увагу, що в цьому прикладі немає необхідності вибирати стовпець. Це лише для довідки.

ISNULL Функція SQL у операторах Case

Відкривши цей стовпець, давайте створимо стовпець, який відображатиме значення незалежно від того, ім’я Кім чи ні, за допомогою оператора CASE . Для цього просто дотримуйтесь прикладу нижче.

ISNULL Функція SQL у операторах Case

У наведеному вище прикладі коду ми додали умову за допомогою оператора CASE , згідно з якою, якщо FirstName дорівнює « Kim », відображатиметься « Yes », ​​а якщо ні, замість цього відображатиметься « No ».

Для цього прикладу я також створив новий стовпець під назвою « IsKim » за допомогою функції END AS . Результат див. у прикладі нижче.

ISNULL Функція SQL у операторах Case

Тепер давайте розглянемо інший приклад використання оператора CASE із застосуванням деяких умов до стовпця TaxAmt із таблиці Sales.SalesOrderHeader .

По-перше, давайте перенесемо перші 100 стовпців із Sales.SalesOrderHeader за допомогою наступного рядка коду та знайдіть стовпець TaxAmt .

ISNULL Функція SQL у операторах Case

Після цього почнемо застосовувати умови для стовпця TaxAmt за допомогою оператора CASE , використовуючи наведений нижче приклад.

ISNULL Функція SQL у операторах Case

Подібно до попереднього прикладу, ми почали з вибору стовпця, до якого хочемо застосувати умови – у цьому випадку це стовпець TaxAmt .

Потім у операторі CASE ми додали умови, згідно з якими, якщо TaxAmt менше або дорівнює 500, відображатиметься значення « Ідеально ». Якщо TaxAmt менше або дорівнює 2000 , тоді буде відображено значення « Добре ».

Крім того, якщо умови не виконано, буде відображено значення « Не добре » . Наприкінці заяви я створив новий стовпець під назвою TaxClass .

ISNULL Функція SQL у операторах Case

Ось як ми використовуємо оператор CASE в SQL . Зверніть увагу, що ви можете встановити скільки завгодно умов. Просто переконайтеся, що використовуєте оператори WHEN і THEN , а також функцію END AS , щоб створити новий стовпець, у якому відображатимуться результати.

Функція ISNULL SQL у SSMS

У цьому прикладі я збираюся використовувати ту саму таблицю з попереднього прикладу. Тоді я продемонструю, як можна використовувати цю функцію для заміни NULL значень у стовпці CurrencyRateID

ISNULL Функція SQL у операторах Case

Після вибору таблиці з наведеного вище прикладу ми можемо побачити значення NULL у стовпці CurrencyRateID . Тепер я хочу замінити ці значення NULL на « 1 ». Для цього зверніться до прикладу нижче.

ISNULL Функція SQL у операторах Case

Щоб змінити значення NULL у певному стовпці, спочатку нам потрібно вибрати стовпець, який має значення NULL. У цьому випадку це CurrencyRateID . Потім ми скористаємося функцією ISNULL і виберемо стовпець, який буде перевірятися функцією ISNULL , тобто CurrencyRateID .

Нам також потрібно оголосити значення заміни, яке ми хочемо використати – у цьому прикладі я використав « 1 ». Нарешті, ми додамо функцію AS , щоб створити новий стовпець під назвою NewRate .

У результаті всі значення NULL були замінені на « 1 » у стовпці NewRate , а ті, які не мали значення NULL , залишилися незмінними. Крім того, ви також можете змінити значення NULL за допомогою стовпця. Ви можете зробити це, дотримуючись прикладу нижче.

ISNULL Функція SQL у операторах Case

Використовуючи той самий синтаксис із попереднього прикладу, ми просто додали SalesOrderID поруч із CurrencyRateID як наше посилання перед функцією ISNULL . Потім ми змінили значення заміни на SalesOrderID . Цей оператор просто перевірить значення NULL у CurrencyRateID і замінить їх значеннями зі стовпця SalesOrderID .

Висновок

Підсумовуючи, ви навчилися використовувати оператор CASE та функцію ISNULL разом із належним синтаксисом у SQL . Ви також дізналися, що в оператор CASE можна додати скільки завгодно логічних умов. Зверніть увагу, що оператор CASE схожий на оператор SWITCH або IF ELSE .

Крім функції ISNULL , ви дізналися, що існують різні способи заміни значення NULL у використанні цієї функції, тобто за допомогою використання фіксованого значення або стовпця.

Все найкраще,

Хафіз






Змініть формати дати за допомогою редактора Power Query

Змініть формати дати за допомогою редактора Power Query

У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.

Power Query: об’єднайте файли з кількох папок

Power Query: об’єднайте файли з кількох папок

Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.

Створення таблиці дат у LuckyTemplates

Створення таблиці дат у LuckyTemplates

Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.

Мобільні звіти LuckyTemplates. Поради та методи

Мобільні звіти LuckyTemplates. Поради та методи

У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.

Звіти про професійну аналітику послуг у LuckyTemplates

Звіти про професійну аналітику послуг у LuckyTemplates

У цій презентації LuckyTemplates ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.

Загальні функції SQL: огляд

Загальні функції SQL: огляд

Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.

Створення шаблону LuckyTemplates: керівництво та поради

Створення шаблону LuckyTemplates: керівництво та поради

У цьому підручнику ви дізнаєтеся, як створити свій ідеальний шаблон LuckyTemplates, налаштований відповідно до ваших потреб і вподобань.

Параметри полів і малі кратні в LuckyTemplates

Параметри полів і малі кратні в LuckyTemplates

У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.