diff --git a/sqlglot/dialects/snowflake.py b/sqlglot/dialects/snowflake.py index 01ef62c112..817d16095f 100644 --- a/sqlglot/dialects/snowflake.py +++ b/sqlglot/dialects/snowflake.py @@ -571,6 +571,7 @@ class Snowflake(Dialect): exp.Degrees, exp.Exp, exp.Sin, + exp.Sinh, exp.Tan, exp.Asin, exp.Cbrt, diff --git a/tests/dialects/test_snowflake.py b/tests/dialects/test_snowflake.py index c33c8bfa0f..64ebfed17c 100644 --- a/tests/dialects/test_snowflake.py +++ b/tests/dialects/test_snowflake.py @@ -21,6 +21,7 @@ def test_snowflake(self): self.validate_identity("SELECT GET(a, b)") self.validate_identity("SELECT TAN(x)") self.validate_identity("SELECT COS(x)") + self.validate_identity("SELECT SINH(1.5)") self.validate_identity("SELECT MOD(x, y)", "SELECT x % y") self.validate_identity("SELECT ROUND(x)") self.validate_identity("SELECT ROUND(123.456, -1)") diff --git a/tests/fixtures/optimizer/annotate_functions.sql b/tests/fixtures/optimizer/annotate_functions.sql index 70f7681ded..1f10fb87bf 100644 --- a/tests/fixtures/optimizer/annotate_functions.sql +++ b/tests/fixtures/optimizer/annotate_functions.sql @@ -2243,6 +2243,14 @@ VARCHAR; SIN(tbl.double_col); DOUBLE; +# dialect: snowflake +SINH(1); +DOUBLE; + +# dialect: snowflake +SINH(1.5); +DOUBLE; + # dialect: snowflake SIGN(tbl.double_col); INT;