Skip to content

Commit 4dbf02b

Browse files
committed
Add new trigonometric functions to postgres
1 parent f8f304c commit 4dbf02b

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

src/queryparser/postgresql/PostgreSQLLexer.g4

+9
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,17 @@ fragment Z_ : 'z' | 'Z';
3131

3232
ABS : A_ B_ S_ ;
3333
ACOS : A_ C_ O_ S_ ;
34+
ACOSD : A_ C_ O_ S_ D_ ;
3435
ALL : A_ L_ L_ ;
3536
ANY : A_ N_ Y_ ;
3637
ASC : A_ S_ C_ ;
3738
ASIN : A_ S_ I_ N_ ;
39+
ASIND : A_ S_ I_ N_ D_ ;
3840
AS_SYM : A_ S_ ;
3941
ATAN : A_ T_ A_ N_ ;
42+
ATAND : A_ T_ A_ N_ D_ ;
4043
ATAN2 : A_ T_ A_ N_ '2' ;
44+
ATAN2D : A_ T_ A_ N_ '2' D_ ;
4145
AVG : A_ V_ G_;
4246
BETWEEN : B_ E_ T_ W_ E_ E_ N_ ;
4347
BIGINT : B_ I_ G_ I_ N_ T_ ;
@@ -59,7 +63,9 @@ CONCAT : C_ O_ N_ C_ A_ T_ ;
5963
CONCAT_WS : C_ O_ N_ C_ A_ T_ '_' W_ S_ ;
6064
CONVERT_SYM : C_ O_ N_ V_ E_ R_ T_ ;
6165
COS : C_ O_ S_ ;
66+
COSD : C_ O_ S_ D_ ;
6267
COT : C_ O_ T_ ;
68+
COTD : C_ O_ T_ D_ ;
6369
COUNT : C_ O_ U_ N_ T_ ;
6470
CROSS : C_ R_ O_ S_ S_ ;
6571
DATE_PART : D_ A_ T_ E_ '_' P_ A_ R_ T_ ;
@@ -107,6 +113,7 @@ LIKE_SYM : L_ I_ K_ E_ ;
107113
LIMIT : L_ I_ M_ I_ T_ ;
108114
LN : L_ N_ ;
109115
LOG : L_ O_ G_ ;
116+
LOG10 : L_ O_ G_ '10' ;
110117
LOWER : (L_ O_ W_ E_ R_) | (L_ C_ A_ S_ E_) ;
111118
LPAD : L_ P_ A_ D_ ;
112119
LTRIM : L_ T_ R_ I_ M_ ;
@@ -154,6 +161,7 @@ SHARE_SYM : S_ H_ A_ R_ E_ ;
154161
SIGN : S_ I_ G_ N_ ;
155162
SIGNED_SYM : S_ I_ G_ N_ E_ D_ ;
156163
SIN : S_ I_ N_ ;
164+
SIND : S_ I_ N_ D_ ;
157165
SOUNDS_SYM : S_ O_ U_ N_ D_ S_ ;
158166
SQUARE_DEGREES : S_ Q_ U_ A_ R_ E_ '_' D_ E_ G_ R_ E_ E_ S_ ;
159167
SQRT : S_ Q_ R_ T_ ;
@@ -166,6 +174,7 @@ SUBSTRING : (S_ U_ B_ S_ T_ R_ I_ N_ G_) | (S_ U_ B_ S_ T_ R_) ;
166174
SUM : S_ U_ M_ ;
167175
SYMMETRIC : S_ Y_ M_ M_ E_ T_ R_ I_ C_ ;
168176
TAN : T_ A_ N_ ;
177+
TAND : T_ A_ N_ D_ ;
169178
THEN_SYM : T_ H_ E_ N_ ;
170179
TIME_SYM : T_ I_ M_ E_ ;
171180
TIMESTAMP : T_ I_ M_ E_ S_ T_ A_ M_ P_ ;

src/queryparser/postgresql/PostgreSQLParser.g4

+5-4
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,11 @@ group_functions:
4848
| STDDEV | STDDEV_POP | STDDEV_SAMP | VAR_POP | VAR_SAMP | VARIANCE ;
4949

5050
number_functions:
51-
ABS | ACOS | ASIN | ATAN2 | ATAN | CBRT | CEIL | CEILING | COS | COT
52-
| DEGREES | DIV | EXP | FLOOR | LN | LOG | MOD | PI | POW
53-
| POWER | RADIANS | RANDOM | ROUND | SIGN | SIN | SQUARE_DEGREES | SQRT
54-
| STERADIANS | TAN | TRUNC ;
51+
ABS | ACOS | ACOSD | ASIN | ASIND | ATAN2 | ATAN2D | ATAN | ATAND
52+
| CBRT | CEIL | CEILING | COS | COSD | COT | COTD
53+
| DEGREES | DIV | EXP | FLOOR | LN | LOG | LOG10 | MOD | PI | POW
54+
| POWER | RADIANS | RANDOM | ROUND | SIGN | SIN | SIND | SQUARE_DEGREES
55+
| SQRT | STERADIANS | TAN | TAND | TRUNC ;
5556

5657
other_functions:
5758
ENCODE | MD5 ;

0 commit comments

Comments
 (0)