Skip to content
This repository was archived by the owner on Dec 25, 2019. It is now read-only.

Commit db15b68

Browse files
committed
Parse DECIMAL and DEC aliases for NUMERIC type
1 parent 1c1c34d commit db15b68

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

src/sqlparser.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1214,7 +1214,7 @@ impl Parser {
12141214
}
12151215
}
12161216
"BYTEA" => Ok(SQLType::Bytea),
1217-
"NUMERIC" => {
1217+
"NUMERIC" | "DECIMAL" | "DEC" => {
12181218
let (precision, scale) = self.parse_optional_precision_scale()?;
12191219
Ok(SQLType::Decimal(precision, scale))
12201220
}

tests/sqlparser_common.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -695,6 +695,18 @@ fn parse_cast() {
695695
"SELECT CAST(id AS BIGINT) FROM customer",
696696
"SELECT CAST(id AS bigint) FROM customer",
697697
);
698+
699+
verified_stmt("SELECT CAST(id AS numeric) FROM customer");
700+
701+
one_statement_parses_to(
702+
"SELECT CAST(id AS dec) FROM customer",
703+
"SELECT CAST(id AS numeric) FROM customer",
704+
);
705+
706+
one_statement_parses_to(
707+
"SELECT CAST(id AS decimal) FROM customer",
708+
"SELECT CAST(id AS numeric) FROM customer",
709+
);
698710
}
699711

700712
#[test]

0 commit comments

Comments
 (0)