ClickHouse/tests/queries/0_stateless/01603_decimal_mult_float.sql

30 lines
1.0 KiB
SQL

SET optimize_arithmetic_operations_in_aggregate_functions = 0;
SELECT round(toDecimal32(2, 2) * 1.2, 6);
SELECT round(toDecimal64(0.5, 2) * 20.33, 6);
SELECT round(0.00001 * toDecimal32(12, 2), 6);
SELECT round(30.033 * toDecimal32(5, 1), 6);
CREATE TABLE IF NOT EXISTS test01603 (
f64 Float64,
d Decimal64(3) DEFAULT toDecimal32(f64, 3),
f32 Float32 DEFAULT f64
) ENGINE=MergeTree() ORDER BY f32;
INSERT INTO test01603(f64) SELECT 1 / (number + 1) FROM system.numbers LIMIT 1000;
SELECT round(sum(d * 1.1), 6) FROM test01603;
SELECT round(sum(8.01 * d), 6) FROM test01603;
SELECT round(sum(f64 * toDecimal64(80, 2)), 6) FROM test01603;
SELECT round(sum(toDecimal64(40, 2) * f32), 6) FROM test01603;
SELECT round(sum(f64 * toDecimal64(0.1, 2)), 6) FROM test01603;
SELECT round(sum(toDecimal64(0.3, 2) * f32), 6) FROM test01603;
SELECT round(sum(f64 * d), 6) FROM test01603;
SELECT round(sum(d * f64), 6) FROM test01603;
SELECT round(sum(f32 * d), 6) FROM test01603;
SELECT round(sum(d * f32), 6) FROM test01603;
DROP TABLE IF EXISTS test01603;