Файлы к уроку:
Ссылки:
Логическое значение
Создать логическое значение
Создадим логические значения true и false.
// Создать логические значения
{true,
false}
Получить логическое значение из текста или числа
Преобразовываем текстовое значение или числовое в логическое.
Число 0 преобразовывается в false, число 1 преобразовывается в true, любое число отличное от 0 преобразовывается в значение true.
// Получаем значение Logical
{Logical.From("true"), // true
Logical.FromText("true"), // true
Logical.From("Senjutsu"), // Ошибка
Logical.From(0), // false
Logical.From(1), // true
Logical.From(666)} // true
Получить логическое значение из другого текста
Бывает, что в столбце находятся данные, которые по сути логические, но имеют текстовый тип данных. Например, в столбе есть всего 2 значения: «yes», «no». Очевидно, что «yes» — это логическое true, а no — это логическое false.
// Если нужно преобразовать в Logical
let
val = "no",
val_to_bool =
if val = "yes" then true
else if val = "no" then false
else null
in
val_to_bool
Тип данных null
Создать значение null
// Создать значение null
null
Сравниваем null с null или с числом
// Сравниваем с null
{null = null, // true
null <> null, // false
1 = null, // false
1 <> null} // true
Значение null и логическое И
// null and...
{null and null, // null
null and true, // null
null and false} // false
Значение null и логическое ИЛИ
// null or...
{null or null, // null
null or true, // true
null or false} // null
Математические операции и сравнения с null
Если сравнить null с любым числом, то вернется null.
Если сравнить null с null любым знаком кроме знака «=», то вернется null.
Если выполнить любую математическую операцию с null, то вернется null.
Если null конкатенировать с текстовым значением, то получится null.
// Сравнение с null, Сложение с null, Конкатенация строки с null
{null < 1, // null
null >= null, // null
null + 1, // null
null & "Firepower"} // null
Сравнение с null с помощью Value.Compare
Функция Value.Compare будет считать значение null меньше любого числового значения.
// -1 если первое число < второго
// 0 если числа равны
// 1 если первое число > второго
{Value.Compare(1, 2), // -1
Value.Compare(null, 0), // -1
Value.Compare(null, -1)} // -1
Как сложить значение null с числовым значением
Если сложить любое число с null, то в результате вернется null. Тем не менее при использовании функции агрегирования null воспринимается как 0.
// Как сложить число с null
{1 + 2 + null, // null
List.Sum({1, 2, null})} // 3
Курс по Языку М
Номер урока | Урок | Описание |
---|---|---|
1 | Power Query Язык М №1. Простые выражения, let | Что такое let, одна или несколько переменных в in, вложенные блоки let. |
2 | Power Query Язык М №2. Создание функций М | Функции без выражения let, функции внутри выражения let. |
3 | Power Query Язык М №3. Создание функций М 2 | Функция как параметр функции, ключевое слово each. |
4 | Power Query Язык М №4. Переменные и идентификаторы | Идентификаторы с кавычками и без, допустимые и недопустимые идентификаторы. |
5 | Power Query Язык М №5. Текстовый тип данных | Особенности работы с текстовым типом данных. |
6 | Power Query Язык М №6. Числовой тип данных (Ввод, Сравнение, Точность, Бесконечность) | В этом уроке мы узнаем, что из себя представляет числовой тип данных. |
7 | Power Query Язык М №7. Дата, время, длительность и прочее(date, datetime, time, datetimezone) | Как создать значение с типом данных #date, #time, #datetime, #datetimezone, #duration. Преобразование значений одного типа данных в другой, арифметические операции, тонкости. |
8 | Power Query Язык М №8. Типы данных Logical, Null | Изучим логический тип данных и значение null. |
9 | Power Query Язык М №9. Объект Record / Запись | Что такое объект Record / Запись. Как создать запись, как сослаться на значения записи, как сравнивать записи, как объединять записи, как изменять записи. |
10 | Power Query Язык М №10. Объект List / Список | Зачем нужны списки, создание списков, сравнение списков, функции для работы со списками. |
11 | Power Query Язык М №11. Объект Table / Таблица | Получить строку, столбец. Объединение таблиц по вертикали. |
12 | Power Query Язык М №12. Как PQ работает с таблицами | В этом уроке вы узнаете как думает Power Query. |
13 | Power Query Язык М №13. Ключевое слово each | Зачем нужно ключевое слово each. |