SELECT * FROM testnumeric_vu_prepare_table1;

SELECT * FROM testnumeric_vu_prepare_table2;

# JIRA 507, WORKING FOR BABEL
SELECT * FROM testnumeric_vu_prepare_table3;

SELECT * FROM testnumeric_vu_prepare_table4;

SELECT * FROM testnumeric_vu_prepare_table5;

SELECT * FROM testnumeric_vu_prepare_table6;

SELECT * FROM testnumeric_vu_prepare_table7;

SELECT * FROM testnumeric_vu_prepare_table8;

SELECT * FROM testnumeric_vu_prepare_table9;

# BABEL-1459
declare @numvar numeric(5,4); set @numvar=-0.010; SELECT @numvar as N'@var';
declare @numvar numeric(4,4); set @numvar=-0.010; SELECT @numvar as N'@var';
declare @numvar numeric(5,4); set @numvar=1.01; SELECT @numvar as N'@var';
declare @numvar numeric(4,4); set @numvar=0.01; SELECT @numvar as N'@var';
declare @numvar numeric(4,4); set @numvar=0; SELECT @numvar as N'@var';

# BABEL-2048
select b - 1 from testnumeric_vu_prepare_table10;
select b - a from testnumeric_vu_prepare_table10;
select a - b from testnumeric_vu_prepare_table10;
select a + b from testnumeric_vu_prepare_table10;
select a * b from testnumeric_vu_prepare_table10;
select a / b from testnumeric_vu_prepare_table10;
select b / a from testnumeric_vu_prepare_table10;
select b * NULL from testnumeric_vu_prepare_table10;
select b / NULL from testnumeric_vu_prepare_table10;
select b - NULL from testnumeric_vu_prepare_table10;
select b + NULL from testnumeric_vu_prepare_table10;
select SQRT(a / b) from testnumeric_vu_prepare_table10;
select ROUND(a / b, 3) from testnumeric_vu_prepare_table10;
select SQRT(7);
select ROUND(10.1234567, 5);

# test operation between int and numeric(20, 9)
select a+c, a-c, a*c, a/c, a%c, a%NULL from testnumeric_vu_prepare_table10;
# test operation between numeric and numeric
select b+c, b-c, b*c, b/c, b%c, b%NULL from testnumeric_vu_prepare_table10;
# test operation between numeric and float
select c+d, c-d, c*d, c/d, c%d, c%NULL from testnumeric_vu_prepare_table10;

# test NULLIF with numeric args
select nullif(c, b) from testnumeric_vu_prepare_table10;

# test Coalesce with numeric args
select coalesce(NULL, NULL, b) from testnumeric_vu_prepare_table10;

# test Case expression with numeric args
select case when a <= 1 then b - a when a > 1 then c - a end from testnumeric_vu_prepare_table10;

# test Max() and Min() with numeric args
select Max(c-b), Min(c-b) from testnumeric_vu_prepare_table10;
