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 ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.

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

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

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

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

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

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

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

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

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

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

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

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