-
Notifications
You must be signed in to change notification settings - Fork 1k
Closed
Description
Fully reproducible code snippet
Numeric literal in scientific notation
from sqlglot import parse_one
sql="SELECT tbl.x*1e4+tbl.y FROM tbl;"
# Base dialect
parse_one(sql)
Result: ParseError: Invalid expression / Unexpected token. Line 1, Col: 21.
# DuckDB dialect
parse_one(sql, dialect='duckdb')
Result: ParseError: Invalid expression / Unexpected token. Line 1, Col: 21.
# Hive dialect
parse_one(sql, dialect='hive')
Result: No error, but parses '1e4+tbl' as a table identifier Regular numeric literal
from sqlglot import parse_one
sql2="SELECT tbl.x*10000+tbl.y FROM tbl;"
# Base, duckdb, hive (and probably other) dialects
parse_one(sql2)
parse_one(sql2, dialect='duckdb')
parse_one(sql2, dialect='hive')
Result: No error, correct astPackage Version
sqlglot 28.3.0
Metadata
Metadata
Assignees
Labels
No labels