delete
This commit is contained in:
@@ -1,26 +0,0 @@
|
|||||||
--Типы данных
|
|
||||||
|
|
||||||
--Задача 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, только будет ноль.
|
|
||||||
*/
|
|
||||||
Reference in New Issue
Block a user