Где используются сравнения?
Например в параметрах where
и condition
.
Какое может быть сравнение?
=
— равно или пересечение.
!=
— не равно или отсутствие пересечения. Набирается как !
+ =
.
>
— больше.
<
— меньше.
>=
— больше или равно. Набирается как >
+ =
.
<=
— меньше или равно. Набирается как <
+ =
.
==
— полностью равно для списков, ассоциированных массивов и списков ассоциированных массивов. Набирается как =
+ =
.
!==
— полностью неравно для списков, ассоциированных массивов и списков ассоциированных массивов. Набирается как !
+ =
+ =
.
Можно ли сравнивать число со строкой?
Да. Они будут сравниваться как числа в том случае если в числе, которое представлено в качестве строки есть только цифры без пробелов, а в качестве разделителя дроби используется .
.
Как работает сравнение одного значения со списком?
true
будет если в списке есть хотя бы один такой элемент.
Как работает сравнение списка со списком?
Сравнение по =
работает по пересечению. Если у списков есть хотя бы один одинаковый элемент, то возвращается true
.
Как работает отрицательное сравнение для списков?
true
возвращается — во втором списке нет ни одного элемента из первого.
Важен ли порядок элементов при простом сравнении?
Нет. Если списки сравниваются по =
то:
=: if(condition: $list1 = $list2; then: true; else: false)
list1: listCreate(item: 1; item: 2; item: 3)
list2: listCreate(item: 3; item: 1; item: 2)
// Результат true
Работают ли сравнения больше и меньше для списков?
Нет — относительные сравнения больше
, меньше
и прочие для списков не работают.
Как провести полное сравнение?
Полное сравнение это двойное равно ==
.
Полное сравнение вернет true
если сравниваемые значения полностью одинаковы с учетом порядка элементов.
Для row
порядок ключей неважен.
Что такое пустое значение?
Это отсутствие каких либо символов, чисел или букв или спецсимволов.
В тотум обозначается двумя идущими подряд двойными кавычками — ""
.
Ноль равен пустому значению?
Нет. 0
и ""
это неравне элементы.
Пустой список равен пустому значению?
Да — ""
равна $#lc
.
Что вернет сравнение Списка с пустым значением внутри с пустым значением?
""
равна списку с пустым значением ["",2,"A"]
тк это пересечение.
Как проверить, что перед нами именно пустой список?
Чтобы удостовериться, что перед нами список без единого элемента надо сравнивать с $#lc
:
=: if(condition: $value = $#lc; then: true; else: false)
value: json`[]`
// Результат true