-------------------------------------- -- Dialect -------------------------------------- ABS(1); INT; ABS(1.5); DOUBLE; GREATEST(1, 2, 3); INT; GREATEST(1, 2.5, 3); DOUBLE; LEAST(1, 2, 3); INT; LEAST(1, 2.5, 3); DOUBLE; -------------------------------------- -- Spark2 / Spark3 / Databricks -------------------------------------- # dialect: spark2, spark, databricks SUBSTRING(tbl.str_col, 0, 0); STRING; # dialect: spark2, spark, databricks SUBSTRING(tbl.bin_col, 0, 0); BINARY; # dialect: spark2, spark, databricks CONCAT(tbl.bin_col, tbl.bin_col); BINARY; # dialect: spark2, spark, databricks CONCAT(tbl.bin_col, tbl.str_col); STRING; # dialect: spark2, spark, databricks CONCAT(tbl.str_col, tbl.bin_col); STRING; # dialect: spark2, spark, databricks CONCAT(tbl.str_col, tbl.str_col); STRING; # dialect: spark2, spark, databricks CONCAT(tbl.str_col, unknown); STRING; # dialect: spark2, spark, databricks CONCAT(tbl.bin_col, unknown); UNKNOWN; # dialect: spark2, spark, databricks CONCAT(unknown, unknown); UNKNOWN; # dialect: spark2, spark, databricks LPAD(tbl.bin_col, 1, tbl.bin_col); BINARY; # dialect: spark2, spark, databricks RPAD(tbl.bin_col, 1, tbl.bin_col); BINARY; # dialect: spark2, spark, databricks LPAD(tbl.bin_col, 1, tbl.str_col); STRING; # dialect: spark2, spark, databricks RPAD(tbl.bin_col, 1, tbl.str_col); STRING; # dialect: spark2, spark, databricks LPAD(tbl.str_col, 1, tbl.bin_col); STRING; # dialect: spark2, spark, databricks RPAD(tbl.str_col, 1, tbl.bin_col); STRING; # dialect: spark2, spark, databricks LPAD(tbl.str_col, 1, tbl.str_col); STRING; # dialect: spark2, spark, databricks RPAD(tbl.str_col, 1, tbl.str_col); STRING; -------------------------------------- -- BigQuery -------------------------------------- # dialect: bigquery SIGN(1); INT; # dialect: bigquery SIGN(1.5); DOUBLE; # dialect: bigquery CEIL(1); DOUBLE; # dialect: bigquery CEIL(5.5); DOUBLE; # dialect: bigquery CEIL(tbl.bignum_col); BIGDECIMAL; # dialect: bigquery FLOOR(1); DOUBLE; # dialect: bigquery FLOOR(5.5); DOUBLE; # dialect: bigquery FLOOR(tbl.bignum_col); BIGDECIMAL; # dialect: bigquery SQRT(1); DOUBLE; # dialect: bigquery SQRT(5.5); DOUBLE; # dialect: bigquery SQRT(tbl.bignum_col); BIGDECIMAL; # dialect: bigquery LN(1); DOUBLE; # dialect: bigquery LN(5.5); DOUBLE; # dialect: bigquery LN(tbl.bignum_col); BIGDECIMAL; # dialect: bigquery LOG(1); DOUBLE; # dialect: bigquery LOG(5.5); DOUBLE; # dialect: bigquery LOG(tbl.bignum_col); BIGDECIMAL; # dialect: bigquery ROUND(1); DOUBLE; # dialect: bigquery ROUND(5.5); DOUBLE; # dialect: bigquery ROUND(tbl.bignum_col); BIGDECIMAL; # dialect: bigquery EXP(1); DOUBLE; # dialect: bigquery EXP(5.5); DOUBLE; # dialect: bigquery EXP(tbl.bignum_col); BIGDECIMAL;