--Типы данных --Задача 1 CREATE TABLE raw_data ON CLUSTER clickhouse_cluster ( user_id String, balance String, created_at String ) ENGINE = MergeTree ORDER BY tuple(); SELECT DISTINCT toDecimal64OrNull(balance, 2) AS balance_decimal, toDateTime64OrNull(created_at, 3) AS created_at_date FROM raw_data WHERE toDecimal64OrNull(balance, 2) IS NOT NULL AND toDateTime64OrNull(created_at, 3) IS NOT NULL /* CAST(balance AS Decimal(10, 2)) - этом случае будет ошибка, так как данный метод не поддеживает NULL Следующие два метода по сути своей преобразование типа данных с условием ИЛИ, то есть: toDecimal64OrNull(balance, 2) - в этом методе на выходе будут корректные данные, в противном случае NULL toDecimal64OrZero(balance, 2) - аналогично с NULL, только будет ноль. */