diff options
Diffstat (limited to 'sqlglot/dialects/clickhouse.py')
-rw-r--r-- | sqlglot/dialects/clickhouse.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/sqlglot/dialects/clickhouse.py b/sqlglot/dialects/clickhouse.py index e91b0bf..2a49066 100644 --- a/sqlglot/dialects/clickhouse.py +++ b/sqlglot/dialects/clickhouse.py @@ -22,6 +22,8 @@ class ClickHouse(Dialect): class Tokenizer(tokens.Tokenizer): COMMENTS = ["--", "#", "#!", ("/*", "*/")] IDENTIFIERS = ['"', "`"] + BIT_STRINGS = [("0b", "")] + HEX_STRINGS = [("0x", ""), ("0X", "")] KEYWORDS = { **tokens.Tokenizer.KEYWORDS, @@ -31,10 +33,18 @@ class ClickHouse(Dialect): "FINAL": TokenType.FINAL, "FLOAT32": TokenType.FLOAT, "FLOAT64": TokenType.DOUBLE, + "INT8": TokenType.TINYINT, + "UINT8": TokenType.UTINYINT, "INT16": TokenType.SMALLINT, + "UINT16": TokenType.USMALLINT, "INT32": TokenType.INT, + "UINT32": TokenType.UINT, "INT64": TokenType.BIGINT, - "INT8": TokenType.TINYINT, + "UINT64": TokenType.UBIGINT, + "INT128": TokenType.INT128, + "UINT128": TokenType.UINT128, + "INT256": TokenType.INT256, + "UINT256": TokenType.UINT256, "TUPLE": TokenType.STRUCT, } @@ -121,9 +131,17 @@ class ClickHouse(Dialect): exp.DataType.Type.ARRAY: "Array", exp.DataType.Type.STRUCT: "Tuple", exp.DataType.Type.TINYINT: "Int8", + exp.DataType.Type.UTINYINT: "UInt8", exp.DataType.Type.SMALLINT: "Int16", + exp.DataType.Type.USMALLINT: "UInt16", exp.DataType.Type.INT: "Int32", + exp.DataType.Type.UINT: "UInt32", exp.DataType.Type.BIGINT: "Int64", + exp.DataType.Type.UBIGINT: "UInt64", + exp.DataType.Type.INT128: "Int128", + exp.DataType.Type.UINT128: "UInt128", + exp.DataType.Type.INT256: "Int256", + exp.DataType.Type.UINT256: "UInt256", exp.DataType.Type.FLOAT: "Float32", exp.DataType.Type.DOUBLE: "Float64", } |