ydb
ydb copied to clipboard
Улучшить в документации пример про NULL в Dict
Тут https://ydb.tech/ru/docs/yql/reference/types/optional есть пример:
$dict = {"a":1, "b":null};
$found = $dict["b"];
select if($found is not null, unwrap($found), -1);
но он не вносит ясности, а вызывает ещё больше вопросов.
Предлагаю улучшенную версию примера:
$dict = {"a":1, "b":null};
$found1 = $dict["a"];
$found2 = $dict["b"];
$found3 = $dict["c"];
SELECT "a", $found1, if($found1 is not null, unwrap($found1), -1)
UNION ALL
SELECT "b", $found2, if($found2 is not null, unwrap($found2), -1)
UNION ALL
SELECT "c", $found3, if($found3 is not null, unwrap($found3), -1);
Результат:
# column0 column1 column2
0 "a" [1] 1
1 "b" null null
2 "c" null -1