2025-02-13 15:23:26 +01:00
<!doctype html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
2025-02-13 21:56:02 +01:00
< meta name = "generator" content = "pdoc 15.0.0" / >
2025-02-13 15:23:26 +01:00
< title > sqlglot.dialects.presto API documentation< / title >
< style > / * ! * B o o t s t r a p R e b o o t v 5 . 0 . 0 ( h t t p s : / / g e t b o o t s t r a p . c o m / ) * C o p y r i g h t 2 0 1 1 - 2 0 2 1 T h e B o o t s t r a p A u t h o r s * C o p y r i g h t 2 0 1 1 - 2 0 2 1 T w i t t e r , I n c . * L i c e n s e d u n d e r M I T ( h t t p s : / / g i t h u b . c o m / t w b s / b o o t s t r a p / b l o b / m a i n / L I C E N S E ) * F o r k e d f r o m N o r m a l i z e . c s s , l i c e n s e d M I T ( h t t p s : / / g i t h u b . c o m / n e c o l a s / n o r m a l i z e . c s s / b l o b / m a s t e r / L I C E N S E . m d ) * / * , : : a f t e r , : : b e f o r e { b o x - s i z i n g : b o r d e r - b o x } @ m e d i a ( p r e f e r s - r e d u c e d - m o t i o n : n o - p r e f e r e n c e ) { : r o o t { s c r o l l - b e h a v i o r : s m o o t h } } b o d y { m a r g i n : 0 ; f o n t - f a m i l y : s y s t e m - u i , - a p p l e - s y s t e m , " S e g o e U I " , R o b o t o , " H e l v e t i c a N e u e " , A r i a l , " N o t o S a n s " , " L i b e r a t i o n S a n s " , s a n s - s e r i f , " A p p l e C o l o r E m o j i " , " S e g o e U I E m o j i " , " S e g o e U I S y m b o l " , " N o t o C o l o r E m o j i " ; f o n t - s i z e : 1 r e m ; f o n t - w e i g h t : 4 0 0 ; l i n e - h e i g h t : 1 . 5 ; c o l o r : # 2 1 2 5 2 9 ; b a c k g r o u n d - c o l o r : # f f f ; - w e b k i t - t e x t - s i z e - a d j u s t : 1 0 0 % ; - w e b k i t - t a p - h i g h l i g h t - c o l o r : t r a n s p a r e n t } h r { m a r g i n : 1 r e m 0 ; c o l o r : i n h e r i t ; b a c k g r o u n d - c o l o r : c u r r e n t C o l o r ; b o r d e r : 0 ; o p a c i t y : . 2 5 } h r : n o t ( [ s i z e ] ) { h e i g h t : 1 p x } h 1 , h 2 , h 3 , h 4 , h 5 , h 6 { m a r g i n - t o p : 0 ; m a r g i n - b o t t o m : . 5 r e m ; f o n t - w e i g h t : 5 0 0 ; l i n e - h e i g h t : 1 . 2 } h 1 { f o n t - s i z e : c a l c ( 1 . 3 7 5 r e m + 1 . 5 v w ) } @ m e d i a ( m i n - w i d t h : 1 2 0 0 p x ) { h 1 { f o n t - s i z e : 2 . 5 r e m } } h 2 { f o n t - s i z e : c a l c ( 1 . 3 2 5 r e m + . 9 v w ) } @ m e d i a ( m i n - w i d t h : 1 2 0 0 p x ) { h 2 { f o n t - s i z e : 2 r e m } } h 3 { f o n t - s i z e : c a l c ( 1 . 3 r e m + . 6 v w ) } @ m e d i a ( m i n - w i d t h : 1 2 0 0 p x ) { h 3 { f o n t - s i z e : 1 . 7 5 r e m } } h 4 { f o n t - s i z e : c a l c ( 1 . 2 7 5 r e m + . 3 v w ) } @ m e d i a ( m i n - w i d t h : 1 2 0 0 p x ) { h 4 { f o n t - s i z e : 1 . 5 r e m } } h 5 { f o n t - s i z e : 1 . 2 5 r e m } h 6 { f o n t - s i z e : 1 r e m } p { m a r g i n - t o p : 0 ; m a r g i n - b o t t o m : 1 r e m } a b b r [ d a t a - b s - o r i g i n a l - t i t l e ] , a b b r [ t i t l e ] { - w e b k i t - t e x t - d e c o r a t i o n : u n d e r l i n e d o t t e d ; t e x t - d e c o r a t i o n : u n d e r l i n e d o t t e d ; c u r s o r : h e l p ; - w e b k i t - t e x t - d e c o r a t i o n - s k i p - i n k : n o n e ; t e x t - d e c o r a t i o n - s k i p - i n k : n o n e } a d d r e s s { m a r g i n - b o t t o m : 1 r e m ; f o n t - s t y l e : n o r m a l ; l i n e - h e i g h t : i n h e r i t } o l , u l { p a d d i n g - l e f t : 2 r e m } d l , o l , u l { m a r g i n - t o p : 0 ; m a r g i n - b o t t o m : 1 r e m } o l o l , o l u l , u l o l , u l u l { m a r g i n - b o t t o m : 0 } d t { f o n t - w e i g h t : 7 0 0 } d d { m a r g i n - b o t t o m : . 5 r e m ; m a r g i n - l e f t : 0 } b l o c k q u o t e { m a r g i n : 0 0 1 r e m } b , s t r o n g { f o n t - w e i g h t : b o l d e r } s m a l l { f o n t - s i z e : . 8 7 5 e m } m a r k { p a d d i n g : . 2 e m ; b a c k g r o u n d - c o l o r : # f c f 8 e 3 } s u b , s u p { p o s i t i o n : r e l a t i v e ; f o n t - s i z e : . 7 5 e m ; l i n e - h e i g h t : 0 ; v e r t i c a l - a l i g n : b a s e l i n e } s u b { b o t t o m : - . 2 5 e m } s u p { t o p : - . 5 e m } a { c o l o r : # 0 d 6 e f d ; t e x t - d e c o r a t i o n : u n d e r l i n e } a : h o v e r { c o l o r : # 0 a 5 8 c a } a : n o t ( [ h r e f ] ) : n o t ( [ c l a s s ] ) , a : n o t ( [ h r e f ] ) : n o t ( [ c l a s s ] ) : h o v e r { c o l o r : i n h e r i t ; t e x t - d e c o r a t i o n : n o n e } c o d e , k b d , p r e , s a m p { f o n t - f a m i l y : S F M o n o - R e g u l a r , M e n l o , M o n a c o , C o n s o l a s , " L i b e r a t i o n M o n o " , " C o u r i e r N e w " , m o n o s p a c e ; f o n t - s i z e : 1 e m ; d i r e c t i o n : l t r ; u n i c o d e - b i d i : b i d i - o v e r r i d e } p r e { d i s p l a y : b l o c k ; m a r g i n - t o p : 0 ; m a r g i n - b o t t o m : 1 r e m ; o v e r f l o w : a u t o ; f o n t - s i z e : . 8 7 5 e m } p r e c o d e { f o n t - s i z e : i n h e r i t ; c o l o r : i n h e r i t ; w o r d - b r e a k : n o r m a l } c o d e { f o n t - s i z e : . 8 7 5 e m ; c o l o r : # d 6 3 3 8 4 ; w o r d - w r a p : b r e a k - w o r d } a > c o d e { c o l o r : i n h e r i t } k b d { p a d d i n g : . 2 r e m . 4 r e m ; f o n t - s i z e : . 8 7 5 e m ; c o l o r : # f f f ; b a c k g r o u n d - c o l o r : # 2 1 2 5 2 9 ; b o r d e r - r a d i u s : . 2 r e m } k b d k b d { p a d d i n g : 0 ; f o n t - s i z e : 1 e m ; f o n t - w e i g h t : 7 0 0 } f i g u r e { m a r g i n : 0 0 1 r e m } i m g , s v g { v e r t i c a l - a l i g n : m i d d l e } t a b l e { c a p t i o n - s i d e : b o t t o m ; b o r d e r - c o l l a p s e : c o l l a p s e } c a p t i o n { p a d d i n g - t o p : . 5 r e m ; p a d d i n g - b o t t o m : . 5 r e m ; c o l o r : # 6 c 7 5 7 d ; t e x t - a l i g n : l e f t } t h { t e x t - a l i g n : i n h e r i t ; t e x t - a l i g n : - w e b k i t - m a t c h - p a r e n t } t b o d y , t d , t f o o t , t h , t h e a d , t r { b o r d e r - c o l o r : i n h e r i t ; b o r d e r - s t y l e : s o l i d ; b o r d e r - w i d t h : 0 } l a b e l { d i s p l a y : i n l i n e - b l o c k } b u t t o n { b o r d e r - r a d i u s : 0 } b u t t o n : f o c u s : n o t ( : f o c u s - v i s i b l e ) { o u t l i n e : 0 } b u t t o n , i n p u t , o p t g r o u p , s e l e c t , t e x t a r e a { m a r g i n : 0 ; f o n t - f a m i l y : i n h e r i t ; f o n t - s i z e : i n h e r i t ; l i n e - h e i g h t : i n h e r i t } b u t t o n , s e l e c t { t e x t - t r a n s f o r m : n o n e } [ r o l e = b u t t o n ] { c u r s o r : p o i n t e r } s e l e c t { w o r d - w r a p : n o r m a l } s e l e c t : d i s a b l e d { o p a c i t y : 1 } [ l i s t ] : : - w e b k i t - c a l e n d a r - p i c k e r - i n d i c a t o r { d i s p l a y : n o n e } [ t y p e = b u t t o n ] , [ t y p e = r e s e t ] , [ t y p e = s u b m i t ] , b u t t o n { - w e b k i t - a p p e a r a n c e : b u t t o n } [ t y p e = b u t t o n ] : n o t ( : d i s a b l e d ) , [ t y p e = r e s e t ] : n o t ( : d i s a b l e d ) , [ t y p e = s u b m i t ] : n o t ( : d i s a b l e d ) , b u t t o n : n o t ( : d i s a b l e d ) { c u r s o r : p o i n t e r } : : - m o z - f o c u s - i n n e r { p a d d i n g : 0 ; b o r d e r - s t y l e : n o n e } t e x t a r e a { r e s i z e : v e r t i c a l } f i e l d s e t { m i n - w i d t h : 0 ; p a d d i n g : 0 ; m a r g i n : 0 ; b o r d e r : 0 } l e g e n d { f l o a t : l e f t ; w i d t h : 1 0 0 % ; p a d d i n g : 0 ; m a r g i n - b o t t o m : . 5 r e m ; f o n t - s i z e : c a l c ( 1 . 2 7 5 r e m + . 3 v w ) ; l i n e - h e i g h t : i n h e r i t } @ m e d i a ( m i n - w i d t h : 1 2 0 0 p x ) { l e g e n d { f o n t - s i z e : 1 . 5 r e m } } l e g e n d + * { c l e a r : l e f t } : : - w e b k i t - d a t e t i m e - e d i t - d a y - f i e l d , : : - w e b k i t - d a t e t i m e - e d i t - f i e l d s - w r a p p e r , : : - w e b k i t - d a t e t i m e - e d i t - h o u r - f i e l d , : : - w e b k i t - d a t e t i m e - e d i t - m i n u t e , : : - w e b k i t - d a t e t i m e - e d i t - m o n t h - f i e
< style > /*! syntax-highlighting.css */ pre { line-height : 125 % ; } span . linenos { color : inherit ; background-color : transparent ; padding-left : 5 px ; padding-right : 20 px ; } . pdoc-code . hll { background-color : #ffffcc } . pdoc-code { background : #f8f8f8 ; } . pdoc-code . c { color : #3D7B7B ; font-style : italic } . pdoc-code . err { border : 1 px solid #FF0000 } . pdoc-code . k { color : #008000 ; font-weight : bold } . pdoc-code . o { color : #666666 } . pdoc-code . ch { color : #3D7B7B ; font-style : italic } . pdoc-code . cm { color : #3D7B7B ; font-style : italic } . pdoc-code . cp { color : #9C6500 } . pdoc-code . cpf { color : #3D7B7B ; font-style : italic } . pdoc-code . c1 { color : #3D7B7B ; font-style : italic } . pdoc-code . cs { color : #3D7B7B ; font-style : italic } . pdoc-code . gd { color : #A00000 } . pdoc-code . ge { font-style : italic } . pdoc-code . gr { color : #E40000 } . pdoc-code . gh { color : #000080 ; font-weight : bold } . pdoc-code . gi { color : #008400 } . pdoc-code . go { color : #717171 } . pdoc-code . gp { color : #000080 ; font-weight : bold } . pdoc-code . gs { font-weight : bold } . pdoc-code . gu { color : #800080 ; font-weight : bold } . pdoc-code . gt { color : #0044DD } . pdoc-code . kc { color : #008000 ; font-weight : bold } . pdoc-code . kd { color : #008000 ; font-weight : bold } . pdoc-code . kn { color : #008000 ; font-weight : bold } . pdoc-code . kp { color : #008000 } . pdoc-code . kr { color : #008000 ; font-weight : bold } . pdoc-code . kt { color : #B00040 } . pdoc-code . m { color : #666666 } . pdoc-code . s { color : #BA2121 } . pdoc-code . na { color : #687822 } . pdoc-code . nb { color : #008000 } . pdoc-code . nc { color : #0000FF ; font-weight : bold } . pdoc-code . no { color : #880000 } . pdoc-code . nd { color : #AA22FF } . pdoc-code . ni { color : #717171 ; font-weight : bold } . pdoc-code . ne { color : #CB3F38 ; font-weight : bold } . pdoc-code . nf { color : #0000FF } . pdoc-code . nl { color : #767600 } . pdoc-code . nn { color : #0000FF ; font-weight : bold } . pdoc-code . nt { color : #008000 ; font-weight : bold } . pdoc-code . nv { color : #19177C } . pdoc-code . ow { color : #AA22FF ; font-weight : bold } . pdoc-code . w { color : #bbbbbb } . pdoc-code . mb { color : #666666 } . pdoc-code . mf { color : #666666 } . pdoc-code . mh { color : #666666 } . pdoc-code . mi { color : #666666 } . pdoc-code . mo { color : #666666 } . pdoc-code . sa { color : #BA2121 } . pdoc-code . sb { color : #BA2121 } . pdoc-code . sc { color : #BA2121 } . pdoc-code . dl { color : #BA2121 } . pdoc-code . sd { color : #BA2121 ; font-style : italic } . pdoc-code . s2 { color : #BA2121 } . pdoc-code . se { color : #AA5D1F ; font-weight : bold } . pdoc-code . sh { color : #BA2121 } . pdoc-code . si { color : #A45A77 ; font-weight : bold } . pdoc-code . sx { color : #008000 } . pdoc-code . sr { color : #A45A77 } . pdoc-code . s1 { color : #BA2121 } . pdoc-code . ss { color : #19177C } . pdoc-code . bp { color : #008000 } . pdoc-code . fm { color : #0000FF } . pdoc-code . vc { color : #19177C } . pdoc-code . vg { color : #19177C } . pdoc-code . vi { color : #19177C } . pdoc-code . vm { color : #19177C } . pdoc-code . il { color : #666666 } < / style >
< style > /*! theme.css */ : root { --pdoc-background : #fff ; } . pdoc { --text : #212529 ; --muted : #6c757d ; --link : #3660a5 ; --link-hover : #1659c5 ; --code : #f8f8f8 ; --active : #fff598 ; --accent : #eee ; --accent2 : #c1c1c1 ; --nav-hover : rgba ( 255 , 255 , 255 , 0.5 ) ; --name : #0066BB ; --def : #008800 ; --annotation : #007020 ; } < / style >
2025-02-13 21:01:12 +01:00
< style > /*! layout.css */ html , body { width : 100 % ; height : 100 % ; } html , main { scroll-behavior : smooth ; } body { background-color : var ( - - pdoc - background ) ; } @ media ( max-width : 769px ) { # navtoggle { cursor : pointer ; position : absolute ; width : 50 px ; height : 40 px ; top : 1 rem ; right : 1 rem ; border-color : var ( - - text ) ; color : var ( - - text ) ; display : flex ; opacity : 0.8 ; z-index : 999 ; } # navtoggle : hover { opacity : 1 ; } # togglestate + div { display : none ; } # togglestate : checked + div { display : inherit ; } main , header { padding : 2 rem 3 vw ; } header + main { margin-top : -3 rem ; } . git-button { display : none !important ; } nav input [ type = "search" ] { max-width : 77 % ; } nav input [ type = "search" ] : first-child { margin-top : -6 px ; } nav input [ type = "search" ] : valid ~ * { display : none !important ; } } @ media ( min-width : 770px ) { : root { --sidebar-width : clamp ( 12.5 rem , 28 vw , 22 rem ) ; } nav { position : fixed ; overflow : auto ; height : 100 vh ; width : var ( - - sidebar - width ) ; } main , header { padding : 3 rem 2 rem 3 rem calc ( var ( - - sidebar - width ) + 3 rem ) ; width : calc ( 54 rem + var ( - - sidebar - width ) ) ; max-width : 100 % ; } header + main { margin-top : -4 rem ; } # navtoggle { display : none ; } } # togglestate { position : absolute ; height : 0 ; opacity : 0 ; } nav . pdoc { --pad : clamp ( 0.5 rem , 2 vw , 1.75 rem ) ; --indent : 1.5 rem ; background-color : var ( - - accent ) ; border-right : 1 px solid var ( - - accent2 ) ; box-shadow : 0 0 20 px rgba ( 50 , 50 , 50 , .2 ) inset ; padding : 0 0 0 var ( - - pad ) ; overflow-wrap : anywhere ; scrollbar-width : thin ; scrollbar-color : var ( - - accent2 ) transparent ; z-index : 1 } nav . pdoc :: -webkit-scrollbar { width : .4 rem ; } nav . pdoc :: -webkit-scrollbar-thumb { background-color : var ( - - accent2 ) ; } nav . pdoc > div { padding : var ( - - pad ) 0 ; } nav . pdoc . module-list-button { display : inline-flex ; align-items : center ; color : var ( - - text ) ; border-color : var ( - - muted ) ; margin-bottom : 1 rem ; } nav . pdoc . module-list-button : hover { border-color : var ( - - text ) ; } nav . pdoc input [ type = search ] { display : block ; outline-offset : 0 ; width : calc ( 100 % - var ( - - pad ) ) ; } nav . pdoc . logo { max-width : calc ( 100 % - var ( - - pad ) ) ; max-height : 35 vh ; display : block ; margin : 0 auto 1 rem ; transform : translate ( calc ( -.5 * var ( - - pad ) ) , 0 ) ; } nav . pdoc ul { list-style : none ; padding-left : 0 ; } nav . pdoc > div > ul { margin-left : calc ( 0 px - var ( - - pad ) ) ; } nav . pdoc li a { padding : .2 rem 0 .2 rem calc ( var ( - - pad ) + var ( - - indent ) ) ; } nav . pdoc > div > ul > li > a { padding-left : var ( - - pad ) ; } nav . pdoc li { transition : all 100 ms ; } nav . pdoc li : hover { background-color : var ( - - nav - hover ) ; } nav . pdoc a , nav . pdoc a : hover { color : var ( - - text ) ; } nav . pdoc a { display : block ; } nav . pdoc > h2 : first-of-type { margin-top : 1.5 rem ; } nav . pdoc . class : before { content : "class " ; color : var ( - - muted ) ; } nav . pdoc . function : after { content : "()" ; color : var ( - - muted ) ; } nav . pdoc footer : before { content : "" ; display : block ; width : calc ( 100 % - var ( - - pad ) ) ; border-top : solid var ( - - accent2 ) 1 px ; margin-top : 1.5 rem ; padding-top : .5 rem ; } nav . pdoc footer { font-size : small ; } < / style >
2025-02-13 21:56:02 +01:00
< style > / * ! c o n t e n t . c s s * / . p d o c { c o l o r : v a r ( - - t e x t ) ; b o x - s i z i n g : b o r d e r - b o x ; l i n e - h e i g h t : 1 . 5 ; b a c k g r o u n d : n o n e ; } . p d o c . p d o c - b u t t o n { c u r s o r : p o i n t e r ; d i s p l a y : i n l i n e - b l o c k ; b o r d e r : s o l i d b l a c k 1 p x ; b o r d e r - r a d i u s : 2 p x ; f o n t - s i z e : . 7 5 r e m ; p a d d i n g : c a l c ( 0 . 5 e m - 1 p x ) 1 e m ; t r a n s i t i o n : 1 0 0 m s a l l ; } . p d o c . a l e r t { p a d d i n g : 1 r e m 1 r e m 1 r e m c a l c ( 1 . 5 r e m + 2 4 p x ) ; b o r d e r : 1 p x s o l i d t r a n s p a r e n t ; b o r d e r - r a d i u s : . 2 5 r e m ; b a c k g r o u n d - r e p e a t : n o - r e p e a t ; b a c k g r o u n d - p o s i t i o n : . 7 5 r e m c e n t e r ; m a r g i n - b o t t o m : 1 r e m ; } . p d o c . a l e r t > e m { d i s p l a y : n o n e ; } . p d o c . a l e r t > * : l a s t - c h i l d { m a r g i n - b o t t o m : 0 ; } . p d o c . a l e r t . n o t e { c o l o r : # 0 8 4 2 9 8 ; b a c k g r o u n d - c o l o r : # c f e 2 f f ; b o r d e r - c o l o r : # b 6 d 4 f e ; b a c k g r o u n d - i m a g e : u r l ( " d a t a : i m a g e / s v g + x m l , % 3 C s v g % 2 0 x m l n s % 3 D % 2 2 h t t p % 3 A / / w w w . w 3 . o r g / 2 0 0 0 / s v g % 2 2 % 2 0 w i d t h % 3 D % 2 2 2 4 % 2 2 % 2 0 h e i g h t % 3 D % 2 2 2 4 % 2 2 % 2 0 f i l l % 3 D % 2 2 % 2 3 0 8 4 2 9 8 % 2 2 % 2 0 v i e w B o x % 3 D % 2 2 0 % 2 0 0 % 2 0 1 6 % 2 0 1 6 % 2 2 % 3 E % 3 C p a t h % 2 0 d % 3 D % 2 2 M 8 % 2 0 1 6 A 8 % 2 0 8 % 2 0 0 % 2 0 1 % 2 0 0 % 2 0 8 % 2 0 0 a 8 % 2 0 8 % 2 0 0 % 2 0 0 % 2 0 0 % 2 0 0 % 2 0 1 6 z m . 9 3 - 9 . 4 1 2 - 1 % 2 0 4 . 7 0 5 c - . 0 7 . 3 4 . 0 2 9 . 5 3 3 . 3 0 4 . 5 3 3 . 1 9 4 % 2 0 0 % 2 0 . 4 8 7 - . 0 7 . 6 8 6 - . 2 4 6 l - . 0 8 8 . 4 1 6 c - . 2 8 7 . 3 4 6 - . 9 2 . 5 9 8 - 1 . 4 6 5 . 5 9 8 - . 7 0 3 % 2 0 0 - 1 . 0 0 2 - . 4 2 2 - . 8 0 8 - 1 . 3 1 9 l . 7 3 8 - 3 . 4 6 8 c . 0 6 4 - . 2 9 3 . 0 0 6 - . 3 9 9 - . 2 8 7 - . 4 7 l - . 4 5 1 - . 0 8 1 . 0 8 2 - . 3 8 1 % 2 0 2 . 2 9 - . 2 8 7 z M 8 % 2 0 5 . 5 a 1 % 2 0 1 % 2 0 0 % 2 0 1 % 2 0 1 % 2 0 0 - 2 % 2 0 1 % 2 0 1 % 2 0 0 % 2 0 0 % 2 0 1 % 2 0 0 % 2 0 2 z % 2 2 / % 3 E % 3 C / s v g % 3 E " ) ; } . p d o c . a l e r t . w a r n i n g { c o l o r : # 6 6 4 d 0 3 ; b a c k g r o u n d - c o l o r : # f f f 3 c d ; b o r d e r - c o l o r : # f f e c b 5 ; b a c k g r o u n d - i m a g e : u r l ( " d a t a : i m a g e / s v g + x m l , % 3 C s v g % 2 0 x m l n s % 3 D % 2 2 h t t p % 3 A / / w w w . w 3 . o r g / 2 0 0 0 / s v g % 2 2 % 2 0 w i d t h % 3 D % 2 2 2 4 % 2 2 % 2 0 h e i g h t % 3 D % 2 2 2 4 % 2 2 % 2 0 f i l l % 3 D % 2 2 % 2 3 6 6 4 d 0 3 % 2 2 % 2 0 v i e w B o x % 3 D % 2 2 0 % 2 0 0 % 2 0 1 6 % 2 0 1 6 % 2 2 % 3 E % 3 C p a t h % 2 0 d % 3 D % 2 2 M 8 . 9 8 2 % 2 0 1 . 5 6 6 a 1 . 1 3 % 2 0 1 . 1 3 % 2 0 0 % 2 0 0 % 2 0 0 - 1 . 9 6 % 2 0 0 L . 1 6 5 % 2 0 1 3 . 2 3 3 c - . 4 5 7 . 7 7 8 . 0 9 1 % 2 0 1 . 7 6 7 . 9 8 % 2 0 1 . 7 6 7 h 1 3 . 7 1 3 c . 8 8 9 % 2 0 0 % 2 0 1 . 4 3 8 - . 9 9 . 9 8 - 1 . 7 6 7 L 8 . 9 8 2 % 2 0 1 . 5 6 6 z M 8 % 2 0 5 c . 5 3 5 % 2 0 0 % 2 0 . 9 5 4 . 4 6 2 . 9 . 9 9 5 l - . 3 5 % 2 0 3 . 5 0 7 a . 5 5 2 . 5 5 2 % 2 0 0 % 2 0 0 % 2 0 1 - 1 . 1 % 2 0 0 L 7 . 1 % 2 0 5 . 9 9 5 A . 9 0 5 . 9 0 5 % 2 0 0 % 2 0 0 % 2 0 1 % 2 0 8 % 2 0 5 z m . 0 0 2 % 2 0 6 a 1 % 2 0 1 % 2 0 0 % 2 0 1 % 2 0 1 % 2 0 0 % 2 0 2 % 2 0 1 % 2 0 1 % 2 0 0 % 2 0 0 % 2 0 1 % 2 0 0 - 2 z % 2 2 / % 3 E % 3 C / s v g % 3 E " ) ; } . p d o c . a l e r t . d a n g e r { c o l o r : # 8 4 2 0 2 9 ; b a c k g r o u n d - c o l o r : # f 8 d 7 d a ; b o r d e r - c o l o r : # f 5 c 2 c 7 ; b a c k g r o u n d - i m a g e : u r l ( " d a t a : i m a g e / s v g + x m l , % 3 C s v g % 2 0 x m l n s % 3 D % 2 2 h t t p % 3 A / / w w w . w 3 . o r g / 2 0 0 0 / s v g % 2 2 % 2 0 w i d t h % 3 D % 2 2 2 4 % 2 2 % 2 0 h e i g h t % 3 D % 2 2 2 4 % 2 2 % 2 0 f i l l % 3 D % 2 2 % 2 3 8 4 2 0 2 9 % 2 2 % 2 0 v i e w B o x % 3 D % 2 2 0 % 2 0 0 % 2 0 1 6 % 2 0 1 6 % 2 2 % 3 E % 3 C p a t h % 2 0 d % 3 D % 2 2 M 5 . 5 2 . 3 5 9 A . 5 . 5 % 2 0 0 % 2 0 0 % 2 0 1 % 2 0 6 % 2 0 0 h 4 a . 5 . 5 % 2 0 0 % 2 0 0 % 2 0 1 % 2 0 . 4 7 4 . 6 5 8 L 8 . 6 9 4 % 2 0 6 H 1 2 . 5 a . 5 . 5 % 2 0 0 % 2 0 0 % 2 0 1 % 2 0 . 3 9 5 . 8 0 7 l - 7 % 2 0 9 a . 5 . 5 % 2 0 0 % 2 0 0 % 2 0 1 - . 8 7 3 - . 4 5 4 L 6 . 8 2 3 % 2 0 9 . 5 H 3 . 5 a . 5 . 5 % 2 0 0 % 2 0 0 % 2 0 1 - . 4 8 - . 6 4 1 l 2 . 5 - 8 . 5 z % 2 2 / % 3 E % 3 C / s v g % 3 E " ) ; } . p d o c . v i s u a l l y - h i d d e n { p o s i t i o n : a b s o l u t e ! i m p o r t a n t ; w i d t h : 1 p x ! i m p o r t a n t ; h e i g h t : 1 p x ! i m p o r t a n t ; p a d d i n g : 0 ! i m p o r t a n t ; m a r g i n : - 1 p x ! i m p o r t a n t ; o v e r f l o w : h i d d e n ! i m p o r t a n t ; c l i p : r e c t ( 0 , 0 , 0 , 0 ) ! i m p o r t a n t ; w h i t e - s p a c e : n o w r a p ! i m p o r t a n t ; b o r d e r : 0 ! i m p o r t a n t ; } . p d o c h 1 , . p d o c h 2 , . p d o c h 3 { f o n t - w e i g h t : 3 0 0 ; m a r g i n : . 3 e m 0 ; p a d d i n g : . 2 e m 0 ; } . p d o c > s e c t i o n : n o t ( . m o d u l e - i n f o ) h 1 { f o n t - s i z e : 1 . 5 r e m ; f o n t - w e i g h t : 5 0 0 ; } . p d o c > s e c t i o n : n o t ( . m o d u l e - i n f o ) h 2 { f o n t - s i z e : 1 . 4 r e m ; f o n t - w e i g h t : 5 0 0 ; } . p d o c > s e c t i o n : n o t ( . m o d u l e - i n f o ) h 3 { f o n t - s i z e : 1 . 3 r e m ; f o n t - w e i g h t : 5 0 0 ; } . p d o c > s e c t i o n : n o t ( . m o d u l e - i n f o ) h 4 { f o n t - s i z e : 1 . 2 r e m ; } . p d o c > s e c t i o n : n o t ( . m o d u l e - i n f o ) h 5 { f o n t - s i z e : 1 . 1 r e m ; } . p d o c a { t e x t - d e c o r a t i o n : n o n e ; c o l o r : v a r ( - - l i n k ) ; } . p d o c a : h o v e r { c o l o r : v a r ( - - l i n k - h o v e r ) ; } . p d o c b l o c k q u o t e { m a r g i n - l e f t : 2 r e m ; } . p d o c p r e { b o r d e r - t o p : 1 p x s o l i d v a r ( - - a c c e n t 2 ) ; b o r d e r - b o t t o m : 1 p x s o l i d v a r ( - - a c c e n t 2 ) ; m a r g i n - t o p : 0 ; m a r g i n - b o t t o m : 1 e m ; p a d d i n g : . 5 r e m 0 . 5 r e m . 5 r e m ; o v e r f l o w - x : a u t o ; b a c k g r o u n d - c o l o r : v a r ( - - c o d e ) ; } . p d o c c o d e { c o l o r : v a r ( - - t e x t ) ; p a d d i n g : . 2 e m . 4 e m ; m a r g i n : 0 ; f o n t - s i z e : 8 5 % ; b a c k g r o u n d - c o l o r : v a r ( - - a c c e n t ) ; b o r d e r - r a d i u s : 6 p x ; } . p d o c a > c o d e { c o l o r : i n h e r i t ; } . p d o c p r e > c o d e { d i s p l a y : i n l i n e - b l o c k ; f o n t - s i z e : i n h e r i t ; b a c k g r o u n d : n o n e ; b o r d e r : n o n e ; p a d d i n g : 0 ; } . p d o c > s e c t i o n : n o t ( . m o d u l e - i n f o ) { m a r g i n - b o t t o m : 1 . 5 r e m ; } . p d o c . m o d u l e n a m e { m a r g i n - t o p : 0 ; f o n t - w e i g h t : b o l d ; } . p d o c . m o d u l e n a m e a { c o l o r : v a r ( - - l i n k ) ; t r a n s i t i o n : 1 0 0 m s a l l ; } . p d o c . g i t - b u t t o n { f l o a t : r i g h t ; b o r d e r : s o l i d v a r ( - - l i n k ) 1 p x ; } . p d o c . g i t - b u t t o n : h o v e r { b a c k g r o u n d - c o l o r : v a r ( - - l i n k ) ; c o l o r : v a r ( - - p d o c - b a c k g r o u n d ) ; } . v i e w - s o u r c e - t o g g l e - s t a t e , . v i e w - s o u r c e - t o g g l e - s t a t e ~ . p d o c - c o d e { d i s p l a y : n o n e ; } . v i e w - s o u r c e - t o g g l e - s t a t e : c h e c k e d ~ . p d o c - c o d e { d i s p l a y : b l o c k ; } . v i e w - s o u r c e - b u t t o n { d i s p l a y : i n l i n e - b l o c k ; f l o a t : r i g h t ; f o n t - s i z e : . 7 5 r e m ; l i n e - h e i g h t : 1 . 5 r e m ; c o l o r : v a r ( - - m u t e d ) ; p a d d i n g : 0 .
2025-02-13 15:23:26 +01:00
< style > /*! custom.css */ < / style > < / head >
< body >
< nav class = "pdoc" >
< label id = "navtoggle" for = "togglestate" class = "pdoc-button" > < svg xmlns = 'http://www.w3.org/2000/svg' viewBox = '0 0 30 30' > < path stroke-linecap = 'round' stroke = "currentColor" stroke-miterlimit = '10' stroke-width = '2' d = 'M4 7h22M4 15h22M4 23h22' / > < / svg > < / label >
< input id = "togglestate" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div > < a class = "pdoc-button module-list-button" href = "../dialects.html" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "16" height = "16" fill = "currentColor" class = "bi bi-box-arrow-in-left" viewBox = "0 0 16 16" >
< path fill-rule = "evenodd" d = "M10 3.5a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5v9a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-2a.5.5 0 0 1 1 0v2A1.5 1.5 0 0 1 9.5 14h-8A1.5 1.5 0 0 1 0 12.5v-9A1.5 1.5 0 0 1 1.5 2h8A1.5 1.5 0 0 1 11 3.5v2a.5.5 0 0 1-1 0v-2z" / >
< path fill-rule = "evenodd" d = "M4.146 8.354a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H14.5a.5.5 0 0 1 0 1H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3z" / >
< / svg > sqlglot.dialects< / a >
< input type = "search" placeholder = "Search..." role = "searchbox" aria-label = "search"
pattern=".+" required>
2025-02-13 15:48:10 +01:00
< h2 > API Documentation< / h2 >
< ul class = "memberlist" >
2025-02-13 21:43:00 +01:00
< li >
< a class = "variable" href = "#DATE_ADD_OR_SUB" > DATE_ADD_OR_SUB< / a >
< / li >
2025-02-13 15:23:26 +01:00
< li >
< a class = "class" href = "#Presto" > Presto< / a >
< ul class = "memberlist" >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.INDEX_OFFSET" > INDEX_OFFSET< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.NULL_ORDERING" > NULL_ORDERING< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.TIME_FORMAT" > TIME_FORMAT< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.STRICT_STRING_CONCAT" > STRICT_STRING_CONCAT< / a >
< / li >
2025-02-13 21:03:38 +01:00
< li >
< a class = "variable" href = "#Presto.SUPPORTS_SEMI_ANTI_JOIN" > SUPPORTS_SEMI_ANTI_JOIN< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
2025-02-13 21:17:09 +01:00
< a class = "variable" href = "#Presto.TYPED_DIVISION" > TYPED_DIVISION< / a >
< / li >
2025-02-13 21:19:14 +01:00
< li >
< a class = "variable" href = "#Presto.TABLESAMPLE_SIZE_IS_PERCENT" > TABLESAMPLE_SIZE_IS_PERCENT< / a >
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "variable" href = "#Presto.LOG_BASE_FIRST" > LOG_BASE_FIRST< / a >
< / li >
2025-02-13 21:52:32 +01:00
< li >
< a class = "variable" href = "#Presto.TIME_MAPPING" > TIME_MAPPING< / a >
< / li >
2025-02-13 21:17:09 +01:00
< li >
< a class = "variable" href = "#Presto.NORMALIZATION_STRATEGY" > NORMALIZATION_STRATEGY< / a >
2025-02-13 20:15:27 +01:00
< / li >
2025-02-13 21:51:42 +01:00
< li >
< a class = "variable" href = "#Presto.ANNOTATORS" > ANNOTATORS< / a >
< / li >
2025-02-13 15:23:26 +01:00
< li >
< a class = "class" href = "#Presto.Tokenizer" > Presto.Tokenizer< / a >
< ul class = "memberlist" >
2025-02-13 21:19:14 +01:00
< li >
< a class = "variable" href = "#Presto.Tokenizer.UNICODE_STRINGS" > UNICODE_STRINGS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Tokenizer.KEYWORDS" > KEYWORDS< / a >
< / li >
2025-02-13 15:23:26 +01:00
< / ul >
< / li >
< li >
< a class = "class" href = "#Presto.Parser" > Presto.Parser< / a >
< ul class = "memberlist" >
2025-02-13 21:28:36 +01:00
< li >
< a class = "variable" href = "#Presto.Parser.VALUES_FOLLOWED_BY_PAREN" > VALUES_FOLLOWED_BY_PAREN< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Parser.FUNCTIONS" > FUNCTIONS< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.Parser.FUNCTION_PARSERS" > FUNCTION_PARSERS< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#Presto.Parser.ID_VAR_TOKENS" > ID_VAR_TOKENS< / a >
< / li >
2025-02-13 21:03:38 +01:00
< li >
< a class = "variable" href = "#Presto.Parser.TABLE_ALIAS_TOKENS" > TABLE_ALIAS_TOKENS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Parser.SHOW_TRIE" > SHOW_TRIE< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.Parser.SET_TRIE" > SET_TRIE< / a >
< / li >
2025-02-13 15:23:26 +01:00
< / ul >
< / li >
< li >
< a class = "class" href = "#Presto.Generator" > Presto.Generator< / a >
< ul class = "memberlist" >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.INTERVAL_ALLOWS_PLURAL_FORM" > INTERVAL_ALLOWS_PLURAL_FORM< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.Generator.JOIN_HINTS" > JOIN_HINTS< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.Generator.TABLE_HINTS" > TABLE_HINTS< / a >
< / li >
2025-02-13 20:43:05 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.QUERY_HINTS" > QUERY_HINTS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.IS_BOOL_ALLOWED" > IS_BOOL_ALLOWED< / a >
< / li >
2025-02-13 20:58:22 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.TZ_TO_WITH_TIME_ZONE" > TZ_TO_WITH_TIME_ZONE< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.Generator.NVL2_SUPPORTED" > NVL2_SUPPORTED< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.STRUCT_DELIMITER" > STRUCT_DELIMITER< / a >
< / li >
2025-02-13 21:09:41 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.LIMIT_ONLY_LITERALS" > LIMIT_ONLY_LITERALS< / a >
< / li >
2025-02-13 21:17:51 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.SUPPORTS_SINGLE_ARG_CONCAT" > SUPPORTS_SINGLE_ARG_CONCAT< / a >
< / li >
2025-02-13 21:20:36 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.LIKE_PROPERTY_INSIDE_SCHEMA" > LIKE_PROPERTY_INSIDE_SCHEMA< / a >
< / li >
2025-02-13 21:21:45 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.MULTI_ARG_DISTINCT" > MULTI_ARG_DISTINCT< / a >
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.SUPPORTS_TO_NUMBER" > SUPPORTS_TO_NUMBER< / a >
< / li >
2025-02-13 21:35:32 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.HEX_FUNC" > HEX_FUNC< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.PARSE_JSON_NAME" > PARSE_JSON_NAME< / a >
< / li >
2025-02-13 21:43:00 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.PAD_FILL_PATTERN_IS_REQUIRED" > PAD_FILL_PATTERN_IS_REQUIRED< / a >
< / li >
2025-02-13 21:54:13 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE" > EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE< / a >
< / li >
2025-02-13 21:56:38 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.SUPPORTS_MEDIAN" > SUPPORTS_MEDIAN< / a >
< / li >
2025-02-13 21:57:20 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.ARRAY_SIZE_NAME" > ARRAY_SIZE_NAME< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.PROPERTIES_LOCATION" > PROPERTIES_LOCATION< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.Generator.TYPE_MAPPING" > TYPE_MAPPING< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.Generator.TRANSFORMS" > TRANSFORMS< / a >
< / li >
2025-02-13 21:32:41 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.RESERVED_KEYWORDS" > RESERVED_KEYWORDS< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "function" href = "#Presto.Generator.md5_sql" > md5_sql< / a >
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "function" href = "#Presto.Generator.strtounix_sql" > strtounix_sql< / a >
< / li >
2025-02-13 21:17:09 +01:00
< li >
< a class = "function" href = "#Presto.Generator.bracket_sql" > bracket_sql< / a >
< / li >
2025-02-13 21:03:38 +01:00
< li >
< a class = "function" href = "#Presto.Generator.struct_sql" > struct_sql< / a >
< / li >
2025-02-13 15:52:09 +01:00
< li >
< a class = "function" href = "#Presto.Generator.interval_sql" > interval_sql< / a >
< / li >
2025-02-13 15:23:26 +01:00
< li >
< a class = "function" href = "#Presto.Generator.transaction_sql" > transaction_sql< / a >
< / li >
2025-02-13 16:00:51 +01:00
< li >
< a class = "function" href = "#Presto.Generator.offset_limit_modifiers" > offset_limit_modifiers< / a >
< / li >
2025-02-13 21:09:41 +01:00
< li >
< a class = "function" href = "#Presto.Generator.create_sql" > create_sql< / a >
< / li >
2025-02-13 21:35:32 +01:00
< li >
< a class = "function" href = "#Presto.Generator.delete_sql" > delete_sql< / a >
< / li >
2025-02-13 21:55:40 +01:00
< li >
< a class = "function" href = "#Presto.Generator.jsonextract_sql" > jsonextract_sql< / a >
< / li >
2025-02-13 21:56:19 +01:00
< li >
< a class = "function" href = "#Presto.Generator.groupconcat_sql" > groupconcat_sql< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.SELECT_KINDS" > SELECT_KINDS< / a >
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "variable" href = "#Presto.Generator.AFTER_HAVING_MODIFIER_TRANSFORMS" > AFTER_HAVING_MODIFIER_TRANSFORMS< / a >
< / li >
2025-02-13 15:23:26 +01:00
< / ul >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#Presto.SUPPORTS_COLUMN_JOIN_MARKS" > SUPPORTS_COLUMN_JOIN_MARKS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.tokenizer_class" > tokenizer_class< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#Presto.jsonpath_tokenizer_class" > jsonpath_tokenizer_class< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.parser_class" > parser_class< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.generator_class" > generator_class< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.TIME_TRIE" > TIME_TRIE< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.FORMAT_TRIE" > FORMAT_TRIE< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.INVERSE_TIME_MAPPING" > INVERSE_TIME_MAPPING< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.INVERSE_TIME_TRIE" > INVERSE_TIME_TRIE< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#Presto.INVERSE_FORMAT_MAPPING" > INVERSE_FORMAT_MAPPING< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.INVERSE_FORMAT_TRIE" > INVERSE_FORMAT_TRIE< / a >
< / li >
2025-02-13 21:52:32 +01:00
< li >
< a class = "variable" href = "#Presto.INVERSE_CREATABLE_KIND_MAPPING" > INVERSE_CREATABLE_KIND_MAPPING< / a >
< / li >
2025-02-13 21:04:58 +01:00
< li >
2025-02-13 21:30:28 +01:00
< a class = "variable" href = "#Presto.ESCAPED_SEQUENCES" > ESCAPED_SEQUENCES< / a >
2025-02-13 21:04:58 +01:00
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#Presto.QUOTE_START" > QUOTE_START< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.QUOTE_END" > QUOTE_END< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.IDENTIFIER_START" > IDENTIFIER_START< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.IDENTIFIER_END" > IDENTIFIER_END< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.BIT_START" > BIT_START< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.BIT_END" > BIT_END< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.HEX_START" > HEX_START< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.HEX_END" > HEX_END< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.BYTE_START" > BYTE_START< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.BYTE_END" > BYTE_END< / a >
< / li >
2025-02-13 21:19:14 +01:00
< li >
< a class = "variable" href = "#Presto.UNICODE_START" > UNICODE_START< / a >
< / li >
< li >
< a class = "variable" href = "#Presto.UNICODE_END" > UNICODE_END< / a >
< / li >
2025-02-13 15:23:26 +01:00
< / ul >
< / li >
< / ul >
< footer > Copyright (c) 2023 Toby Mao< / footer >
< a class = "attribution" title = "pdoc: Python API documentation generator" href = "https://pdoc.dev" target = "_blank" >
built with < span class = "visually-hidden" > pdoc< / span > < img
alt="pdoc logo"
src="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20role%3D%22img%22%20aria-label%3D%22pdoc%20logo%22%20width%3D%22300%22%20height%3D%22150%22%20viewBox%3D%22-1%200%2060%2030%22%3E%3Ctitle%3Epdoc%3C/title%3E%3Cpath%20d%3D%22M29.621%2021.293c-.011-.273-.214-.475-.511-.481a.5.5%200%200%200-.489.503l-.044%201.393c-.097.551-.695%201.215-1.566%201.704-.577.428-1.306.486-2.193.182-1.426-.617-2.467-1.654-3.304-2.487l-.173-.172a3.43%203.43%200%200%200-.365-.306.49.49%200%200%200-.286-.196c-1.718-1.06-4.931-1.47-7.353.191l-.219.15c-1.707%201.187-3.413%202.131-4.328%201.03-.02-.027-.49-.685-.141-1.763.233-.721.546-2.408.772-4.076.042-.09.067-.187.046-.288.166-1.347.277-2.625.241-3.351%201.378-1.008%202.271-2.586%202.271-4.362%200-.976-.272-1.935-.788-2.774-.057-.094-.122-.18-.184-.268.033-.167.052-.339.052-.516%200-1.477-1.202-2.679-2.679-2.679-.791%200-1.496.352-1.987.9a6.3%206.3%200%200%200-1.001.029c-.492-.564-1.207-.929-2.012-.929-1.477%200-2.679%201.202-2.679%202.679A2.65%202.65%200%200%200%20.97%206.554c-.383.747-.595%201.572-.595%202.41%200%202.311%201.507%204.29%203.635%205.107-.037.699-.147%202.27-.423%203.294l-.137.461c-.622%202.042-2.515%208.257%201.727%2010.643%201.614.908%203.06%201.248%204.317%201.248%202.665%200%204.492-1.524%205.322-2.401%201.476-1.559%202.886-1.854%206.491.82%201.877%201.393%203.514%201.753%204.861%201.068%202.223-1.713%202.811-3.867%203.399-6.374.077-.846.056-1.469.054-1.537zm-4.835%204.313c-.054.305-.156.586-.242.629-.034-.007-.131-.022-.307-.157-.145-.111-.314-.478-.456-.908.221.121.432.25.675.355.115.039.219.051.33.081zm-2.251-1.238c-.05.33-.158.648-.252.694-.022.001-.125-.018-.307-.157-.217-.166-.488-.906-.639-1.573.358.344.754.693%201.198%201.036zm-3.887-2.337c-.006-.116-.018-.231-.041-.342.635.145%201.189.368%201.599.625.097.231.166.481.174.642-.03.049-.055.101-.067.158-.046.013-.128.026-.298.004-.278-.037-.901-.57-1.367-1.087zm-1.127-.497c.116.306.176.625.12.71-.019.014-.117.045-.345.016-.206-.027-.604-.332-.986-.695.41-.051.816-.056%201.211-.031zm-4.535%201.535c.209.22.379.47.358.598-.006.041-.088.138-.351.234-.144.055-.539-.063-.979-.259a11.66%2011.66%200%200%200%20.972-.573zm.983-.664c.359-.237.738-.418%201.126-.554.25.237.479.548.457.694-.006.042-.087.138-.351.235-.174.064-.694-.105-1.232-.375zm-3.381%201.794c-.022.145-.061.29-.149.401-.133.166-.358.248-.69.251h-.002c-.133%200-.306-.26-.45-.621.417.091.854.07%201.291-.031zm-2.066-8.077a4.78%204.78%200%200%201-.775-.584c.172-.115.505-.254.88-.378l-.105.962zm-.331%202.302a10.32%2010.32%200%200%201-.828-.502c.202-.143.576-.328.984-.49l-.156.992zm-.45%202.157l-.701-.403c.214-.115.536-.249.891-.376a11.57%2011.57%200%200%201-.19.779zm-.181%201.716c.064.398.194.702.298.893-.194-.051-.435-.162-.736-.398.061-.119.224-.3.438-.495zM8.87%204.141c0%20.152-.123.276-.276.276s-.275-.124-.275-.276.123-.276.276-.276.275.124.275.276zm-.735-.389a1.15%201.15%200%200%200-.314.783%201.16%201.16%200%200%200%201.162%201.162c.457%200%20.842-.27%201.032-.653.026.117.042.238.042.362a1.68%201.68%200%200%201-1.679%201.679%201.68%201.68%200%200%201-1.679-1.679c0-.843.626-1.535%201.436-1.654zM5.059%205.406A1.68%201.68%200%200%201%203.38%207.085a1.68%201.68%200%200%201-1.679-1.679c0-.037.009-.072.011-.109.21.3.541.508.935.508a1.16%201.16%200%200%200%201.162-1.162%201.14%201.14%200%200%200-.474-.912c.015%200%20.03-.005.045-.005.926.001%201.679.754%201.679%201.68zM3.198%204.141c0%20.152-.123.276-.276.276s-.275-.124-.275-.276.123-.276.276-.276.275.124.275.276zM1.375%208.964c0-.52.103-1.035.288-1.52.466.394%201.06.64%201.717.64%201.144%200%202.116-.725%202.499-1.738.383%201.012%201.355%201.738%202.499%201.738.867%200%201.631-.421%202.121-1.062.307.605.478%201.267.478%201.942%200%202.486-2.153%204.51-4.801%204.51s-4.801-2.023-4.801-4.51zm24.342%2019.349c-.985.498-2.267.168-3.813-.979-3.073-2.281-5.453-3.199-7.813-.705-1.315%201.391-4.163%203.365-8.423.97-3.174-1.786-2.239-6.266-1.261-9.479l.146-.492c.276-1.02.395-2.457.444-3.268a6.11%206.11%200%200%200%201.18.115%206.01%206.01%200%200%200%202.536-.562l-.006.175c-.802.215-1.848.612
< / a >
< / div >
< / nav >
< main class = "pdoc" >
< section class = "module-info" >
< a class = "pdoc-button git-button" href = "https://github.com/tobymao/sqlglot/tree/main/sqlglot/dialects/presto.py" > Edit on GitHub< / a >
< h1 class = "modulename" >
< a href = "./../../sqlglot.html" > sqlglot< / a > < wbr > .< a href = "./../dialects.html" > dialects< / a > < wbr > .presto < / h1 >
< input id = "mod-presto-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-source-button" for = "mod-presto-view-source" > < span > View Source< / span > < / label >
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "L-1" > < a href = "#L-1" > < span class = "linenos" > 1< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > __future__< / span > < span class = "kn" > import< / span > < span class = "n" > annotations< / span >
< / span > < span id = "L-2" > < a href = "#L-2" > < span class = "linenos" > 2< / span > < / a >
2025-02-13 15:52:09 +01:00
< / span > < span id = "L-3" > < a href = "#L-3" > < span class = "linenos" > 3< / span > < / a > < span class = "kn" > import< / span > < span class = "nn" > typing< / span > < span class = "k" > as< / span > < span class = "nn" > t< / span >
< / span > < span id = "L-4" > < a href = "#L-4" > < span class = "linenos" > 4< / span > < / a >
< / span > < span id = "L-5" > < a href = "#L-5" > < span class = "linenos" > 5< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot< / span > < span class = "kn" > import< / span > < span class = "n" > exp< / span > < span class = "p" > ,< / span > < span class = "n" > generator< / span > < span class = "p" > ,< / span > < span class = "n" > parser< / span > < span class = "p" > ,< / span > < span class = "n" > tokens< / span > < span class = "p" > ,< / span > < span class = "n" > transforms< / span >
< / span > < span id = "L-6" > < a href = "#L-6" > < span class = "linenos" > 6< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.dialects.dialect< / span > < span class = "kn" > import< / span > < span class = "p" > (< / span >
< / span > < span id = "L-7" > < a href = "#L-7" > < span class = "linenos" > 7< / span > < / a > < span class = "n" > Dialect< / span > < span class = "p" > ,< / span >
2025-02-13 21:17:09 +01:00
< / span > < span id = "L-8" > < a href = "#L-8" > < span class = "linenos" > 8< / span > < / a > < span class = "n" > NormalizationStrategy< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-9" > < a href = "#L-9" > < span class = "linenos" > 9< / span > < / a > < span class = "n" > binary_from_function< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-10" > < a href = "#L-10" > < span class = "linenos" > 10< / span > < / a > < span class = "n" > bool_xor_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-11" > < a href = "#L-11" > < span class = "linenos" > 11< / span > < / a > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-12" > < a href = "#L-12" > < span class = "linenos" > 12< / span > < / a > < span class = "n" > datestrtodate_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-13" > < a href = "#L-13" > < span class = "linenos" > 13< / span > < / a > < span class = "n" > encode_decode_sql< / span > < span class = "p" > ,< / span >
2025-02-13 21:29:39 +01:00
< / span > < span id = "L-14" > < a href = "#L-14" > < span class = "linenos" > 14< / span > < / a > < span class = "n" > build_formatted_time< / span > < span class = "p" > ,< / span >
2025-02-13 21:17:09 +01:00
< / span > < span id = "L-15" > < a href = "#L-15" > < span class = "linenos" > 15< / span > < / a > < span class = "n" > if_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-16" > < a href = "#L-16" > < span class = "linenos" > 16< / span > < / a > < span class = "n" > left_to_substring_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-17" > < a href = "#L-17" > < span class = "linenos" > 17< / span > < / a > < span class = "n" > no_ilike_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-18" > < a href = "#L-18" > < span class = "linenos" > 18< / span > < / a > < span class = "n" > no_pivot_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-19" > < a href = "#L-19" > < span class = "linenos" > 19< / span > < / a > < span class = "n" > no_safe_divide_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-20" > < a href = "#L-20" > < span class = "linenos" > 20< / span > < / a > < span class = "n" > no_timestamp_sql< / span > < span class = "p" > ,< / span >
2025-02-13 21:20:36 +01:00
< / span > < span id = "L-21" > < a href = "#L-21" > < span class = "linenos" > 21< / span > < / a > < span class = "n" > regexp_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-22" > < a href = "#L-22" > < span class = "linenos" > 22< / span > < / a > < span class = "n" > rename_func< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-23" > < a href = "#L-23" > < span class = "linenos" > 23< / span > < / a > < span class = "n" > right_to_substring_sql< / span > < span class = "p" > ,< / span >
2025-02-13 21:41:14 +01:00
< / span > < span id = "L-24" > < a href = "#L-24" > < span class = "linenos" > 24< / span > < / a > < span class = "n" > sha256_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-25" > < a href = "#L-25" > < span class = "linenos" > 25< / span > < / a > < span class = "n" > struct_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-26" > < a href = "#L-26" > < span class = "linenos" > 26< / span > < / a > < span class = "n" > str_position_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-27" > < a href = "#L-27" > < span class = "linenos" > 27< / span > < / a > < span class = "n" > timestamptrunc_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-28" > < a href = "#L-28" > < span class = "linenos" > 28< / span > < / a > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-29" > < a href = "#L-29" > < span class = "linenos" > 29< / span > < / a > < span class = "n" > ts_or_ds_add_cast< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-30" > < a href = "#L-30" > < span class = "linenos" > 30< / span > < / a > < span class = "n" > unit_to_str< / span > < span class = "p" > ,< / span >
2025-02-13 21:51:42 +01:00
< / span > < span id = "L-31" > < a href = "#L-31" > < span class = "linenos" > 31< / span > < / a > < span class = "n" > sequence_sql< / span > < span class = "p" > ,< / span >
2025-02-13 21:54:13 +01:00
< / span > < span id = "L-32" > < a href = "#L-32" > < span class = "linenos" > 32< / span > < / a > < span class = "n" > build_regexp_extract< / span > < span class = "p" > ,< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-33" > < a href = "#L-33" > < span class = "linenos" > 33< / span > < / a > < span class = "n" > explode_to_unnest_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-34" > < a href = "#L-34" > < span class = "linenos" > 34< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-35" > < a href = "#L-35" > < span class = "linenos" > 35< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.dialects.hive< / span > < span class = "kn" > import< / span > < span class = "n" > Hive< / span >
< / span > < span id = "L-36" > < a href = "#L-36" > < span class = "linenos" > 36< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.dialects.mysql< / span > < span class = "kn" > import< / span > < span class = "n" > MySQL< / span >
< / span > < span id = "L-37" > < a href = "#L-37" > < span class = "linenos" > 37< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.helper< / span > < span class = "kn" > import< / span > < span class = "n" > apply_index_offset< / span > < span class = "p" > ,< / span > < span class = "n" > seq_get< / span >
< / span > < span id = "L-38" > < a href = "#L-38" > < span class = "linenos" > 38< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.tokens< / span > < span class = "kn" > import< / span > < span class = "n" > TokenType< / span >
< / span > < span id = "L-39" > < a href = "#L-39" > < span class = "linenos" > 39< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.transforms< / span > < span class = "kn" > import< / span > < span class = "n" > unqualify_columns< / span >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-40" > < a href = "#L-40" > < span class = "linenos" > 40< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.generator< / span > < span class = "kn" > import< / span > < span class = "n" > unsupported_args< / span >
< / span > < span id = "L-41" > < a href = "#L-41" > < span class = "linenos" > 41< / span > < / a >
< / span > < span id = "L-42" > < a href = "#L-42" > < span class = "linenos" > 42< / span > < / a > < span class = "n" > DATE_ADD_OR_SUB< / span > < span class = "o" > =< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Union< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateAdd< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampAdd< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateSub< / span > < span class = "p" > ]< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-43" > < a href = "#L-43" > < span class = "linenos" > 43< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-44" > < a href = "#L-44" > < span class = "linenos" > 44< / span > < / a >
< / span > < span id = "L-45" > < a href = "#L-45" > < span class = "linenos" > 45< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _initcap_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Initcap< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-46" > < a href = "#L-46" > < span class = "linenos" > 46< / span > < / a > < span class = "n" > regex< / span > < span class = "o" > =< / span > < span class = "sa" > r< / span > < span class = "s2" > " (\w)(\w*)" < / span >
< / span > < span id = "L-47" > < a href = "#L-47" > < span class = "linenos" > 47< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " REGEXP_REPLACE(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > , ' < / span > < span class = "si" > {< / span > < span class = "n" > regex< / span > < span class = "si" > }< / span > < span class = "s2" > ' , x -> UPPER(x[1]) || LOWER(x[2]))" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-48" > < a href = "#L-48" > < span class = "linenos" > 48< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-49" > < a href = "#L-49" > < span class = "linenos" > 49< / span > < / a >
< / span > < span id = "L-50" > < a href = "#L-50" > < span class = "linenos" > 50< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _no_sort_array< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-51" > < a href = "#L-51" > < span class = "linenos" > 51< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " asc" < / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > false< / span > < span class = "p" > ():< / span >
< / span > < span id = "L-52" > < a href = "#L-52" > < span class = "linenos" > 52< / span > < / a > < span class = "n" > comparator< / span > < span class = "o" > =< / span > < span class = "s2" > " (a, b) -> CASE WHEN a < b THEN 1 WHEN a > b THEN -1 ELSE 0 END" < / span >
< / span > < span id = "L-53" > < a href = "#L-53" > < span class = "linenos" > 53< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "L-54" > < a href = "#L-54" > < span class = "linenos" > 54< / span > < / a > < span class = "n" > comparator< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "L-55" > < a href = "#L-55" > < span class = "linenos" > 55< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_SORT" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > comparator< / span > < span class = "p" > )< / span >
2025-02-13 21:51:42 +01:00
< / span > < span id = "L-56" > < a href = "#L-56" > < span class = "linenos" > 56< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-57" > < a href = "#L-57" > < span class = "linenos" > 57< / span > < / a >
< / span > < span id = "L-58" > < a href = "#L-58" > < span class = "linenos" > 58< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _schema_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-59" > < a href = "#L-59" > < span class = "linenos" > 59< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > parent< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Property< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-60" > < a href = "#L-60" > < span class = "linenos" > 60< / span > < / a > < span class = "n" > columns< / span > < span class = "o" > =< / span > < span class = "s2" > " , " < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " ' < / span > < span class = "si" > {< / span > < span class = "n" > c< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "si" > }< / span > < span class = "s2" > ' " < / span > < span class = "k" > for< / span > < span class = "n" > c< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > )< / span >
< / span > < span id = "L-61" > < a href = "#L-61" > < span class = "linenos" > 61< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " ARRAY[< / span > < span class = "si" > {< / span > < span class = "n" > columns< / span > < span class = "si" > }< / span > < span class = "s2" > ]" < / span >
< / span > < span id = "L-62" > < a href = "#L-62" > < span class = "linenos" > 62< / span > < / a >
< / span > < span id = "L-63" > < a href = "#L-63" > < span class = "linenos" > 63< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > parent< / span > < span class = "p" > :< / span >
< / span > < span id = "L-64" > < a href = "#L-64" > < span class = "linenos" > 64< / span > < / a > < span class = "k" > for< / span > < span class = "n" > schema< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > parent< / span > < span class = "o" > .< / span > < span class = "n" > find_all< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-65" > < a href = "#L-65" > < span class = "linenos" > 65< / span > < / a > < span class = "n" > column_defs< / span > < span class = "o" > =< / span > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > find_all< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ColumnDef< / span > < span class = "p" > )< / span >
< / span > < span id = "L-66" > < a href = "#L-66" > < span class = "linenos" > 66< / span > < / a > < span class = "k" > if< / span > < span class = "n" > column_defs< / span > < span class = "ow" > and< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > parent< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Property< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-67" > < a href = "#L-67" > < span class = "linenos" > 67< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "o" > .< / span > < span class = "n" > extend< / span > < span class = "p" > (< / span > < span class = "n" > column_defs< / span > < span class = "p" > )< / span >
< / span > < span id = "L-68" > < a href = "#L-68" > < span class = "linenos" > 68< / span > < / a >
< / span > < span id = "L-69" > < a href = "#L-69" > < span class = "linenos" > 69< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > schema_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:54:13 +01:00
< / span > < span id = "L-70" > < a href = "#L-70" > < span class = "linenos" > 70< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-71" > < a href = "#L-71" > < span class = "linenos" > 71< / span > < / a >
< / span > < span id = "L-72" > < a href = "#L-72" > < span class = "linenos" > 72< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _quantile_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Quantile< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-73" > < a href = "#L-73" > < span class = "linenos" > 73< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span > < span class = "s2" > " Presto does not support exact quantiles" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-74" > < a href = "#L-74" > < span class = "linenos" > 74< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " APPROX_PERCENTILE" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " quantile" < / span > < span class = "p" > ))< / span >
2025-02-13 21:54:13 +01:00
< / span > < span id = "L-75" > < a href = "#L-75" > < span class = "linenos" > 75< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-76" > < a href = "#L-76" > < span class = "linenos" > 76< / span > < / a >
< / span > < span id = "L-77" > < a href = "#L-77" > < span class = "linenos" > 77< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _str_to_time_sql< / span > < span class = "p" > (< / span >
< / span > < span id = "L-78" > < a href = "#L-78" > < span class = "linenos" > 78< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToDate< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToTime< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsToDate< / span >
< / span > < span id = "L-79" > < a href = "#L-79" > < span class = "linenos" > 79< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-80" > < a href = "#L-80" > < span class = "linenos" > 80< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ))< / span >
2025-02-13 21:54:13 +01:00
< / span > < span id = "L-81" > < a href = "#L-81" > < span class = "linenos" > 81< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-82" > < a href = "#L-82" > < span class = "linenos" > 82< / span > < / a >
< / span > < span id = "L-83" > < a href = "#L-83" > < span class = "linenos" > 83< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _ts_or_ds_to_date_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsToDate< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-84" > < a href = "#L-84" > < span class = "linenos" > 84< / span > < / a > < span class = "n" > time_format< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-85" > < a href = "#L-85" > < span class = "linenos" > 85< / span > < / a > < span class = "k" > if< / span > < span class = "n" > time_format< / span > < span class = "ow" > and< / span > < span class = "n" > time_format< / span > < span class = "ow" > not< / span > < span class = "ow" > in< / span > < span class = "p" > (< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > TIME_FORMAT< / span > < span class = "p" > ,< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > DATE_FORMAT< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-86" > < a href = "#L-86" > < span class = "linenos" > 86< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > _str_to_time_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATE< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-87" > < a href = "#L-87" > < span class = "linenos" > 87< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span >
< / span > < span id = "L-88" > < a href = "#L-88" > < span class = "linenos" > 88< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > ),< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATE< / span > < span class = "p" > )< / span >
< / span > < span id = "L-89" > < a href = "#L-89" > < span class = "linenos" > 89< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-90" > < a href = "#L-90" > < span class = "linenos" > 90< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-91" > < a href = "#L-91" > < span class = "linenos" > 91< / span > < / a >
< / span > < span id = "L-92" > < a href = "#L-92" > < span class = "linenos" > 92< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _ts_or_ds_add_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-93" > < a href = "#L-93" > < span class = "linenos" > 93< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > ts_or_ds_add_cast< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-94" > < a href = "#L-94" > < span class = "linenos" > 94< / span > < / a > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > unit_to_str< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-95" > < a href = "#L-95" > < span class = "linenos" > 95< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ,< / span > < span class = "n" > unit< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-96" > < a href = "#L-96" > < span class = "linenos" > 96< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-97" > < a href = "#L-97" > < span class = "linenos" > 97< / span > < / a >
< / span > < span id = "L-98" > < a href = "#L-98" > < span class = "linenos" > 98< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _ts_or_ds_diff_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsDiff< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-99" > < a href = "#L-99" > < span class = "linenos" > 99< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > )< / span >
< / span > < span id = "L-100" > < a href = "#L-100" > < span class = "linenos" > 100< / span > < / a > < span class = "n" > expr< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > )< / span >
< / span > < span id = "L-101" > < a href = "#L-101" > < span class = "linenos" > 101< / span > < / a > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > unit_to_str< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-102" > < a href = "#L-102" > < span class = "linenos" > 102< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / span > < span class = "n" > unit< / span > < span class = "p" > ,< / span > < span class = "n" > expr< / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
2025-02-13 21:51:42 +01:00
< / span > < span id = "L-103" > < a href = "#L-103" > < span class = "linenos" > 103< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-104" > < a href = "#L-104" > < span class = "linenos" > 104< / span > < / a >
< / span > < span id = "L-105" > < a href = "#L-105" > < span class = "linenos" > 105< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _build_approx_percentile< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > :< / span >
< / span > < span id = "L-106" > < a href = "#L-106" > < span class = "linenos" > 106< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "mi" > 4< / span > < span class = "p" > :< / span >
< / span > < span id = "L-107" > < a href = "#L-107" > < span class = "linenos" > 107< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxQuantile< / span > < span class = "p" > (< / span >
< / span > < span id = "L-108" > < a href = "#L-108" > < span class = "linenos" > 108< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-109" > < a href = "#L-109" > < span class = "linenos" > 109< / span > < / a > < span class = "n" > weight< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-110" > < a href = "#L-110" > < span class = "linenos" > 110< / span > < / a > < span class = "n" > quantile< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-111" > < a href = "#L-111" > < span class = "linenos" > 111< / span > < / a > < span class = "n" > accuracy< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 3< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-112" > < a href = "#L-112" > < span class = "linenos" > 112< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-113" > < a href = "#L-113" > < span class = "linenos" > 113< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "mi" > 3< / span > < span class = "p" > :< / span >
< / span > < span id = "L-114" > < a href = "#L-114" > < span class = "linenos" > 114< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxQuantile< / span > < span class = "p" > (< / span >
< / span > < span id = "L-115" > < a href = "#L-115" > < span class = "linenos" > 115< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > quantile< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > accuracy< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span >
< / span > < span id = "L-116" > < a href = "#L-116" > < span class = "linenos" > 116< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-117" > < a href = "#L-117" > < span class = "linenos" > 117< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxQuantile< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-118" > < a href = "#L-118" > < span class = "linenos" > 118< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-119" > < a href = "#L-119" > < span class = "linenos" > 119< / span > < / a >
< / span > < span id = "L-120" > < a href = "#L-120" > < span class = "linenos" > 120< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _build_from_unixtime< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > :< / span >
< / span > < span id = "L-121" > < a href = "#L-121" > < span class = "linenos" > 121< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "mi" > 3< / span > < span class = "p" > :< / span >
< / span > < span id = "L-122" > < a href = "#L-122" > < span class = "linenos" > 122< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "p" > (< / span >
< / span > < span id = "L-123" > < a href = "#L-123" > < span class = "linenos" > 123< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-124" > < a href = "#L-124" > < span class = "linenos" > 124< / span > < / a > < span class = "n" > hours< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-125" > < a href = "#L-125" > < span class = "linenos" > 125< / span > < / a > < span class = "n" > minutes< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-126" > < a href = "#L-126" > < span class = "linenos" > 126< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-127" > < a href = "#L-127" > < span class = "linenos" > 127< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "mi" > 2< / span > < span class = "p" > :< / span >
< / span > < span id = "L-128" > < a href = "#L-128" > < span class = "linenos" > 128< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > zone< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-129" > < a href = "#L-129" > < span class = "linenos" > 129< / span > < / a >
< / span > < span id = "L-130" > < a href = "#L-130" > < span class = "linenos" > 130< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > )< / span >
2025-02-13 21:51:42 +01:00
< / span > < span id = "L-131" > < a href = "#L-131" > < span class = "linenos" > 131< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-132" > < a href = "#L-132" > < span class = "linenos" > 132< / span > < / a >
< / span > < span id = "L-133" > < a href = "#L-133" > < span class = "linenos" > 133< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _first_last_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Func< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-134" > < a href = "#L-134" > < span class = "linenos" > 134< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "L-135" > < a href = "#L-135" > < span class = "linenos" > 135< / span > < / a > < span class = "sd" > Trino doesn' t support FIRST / LAST as functions, but they' re valid in the context< / span >
< / span > < span id = "L-136" > < a href = "#L-136" > < span class = "linenos" > 136< / span > < / a > < span class = "sd" > of MATCH_RECOGNIZE, so we need to preserve them in that case. In all other cases< / span >
< / span > < span id = "L-137" > < a href = "#L-137" > < span class = "linenos" > 137< / span > < / a > < span class = "sd" > they' re converted into an ARBITRARY call.< / span >
< / span > < span id = "L-138" > < a href = "#L-138" > < span class = "linenos" > 138< / span > < / a >
< / span > < span id = "L-139" > < a href = "#L-139" > < span class = "linenos" > 139< / span > < / a > < span class = "sd" > Reference: https://trino.io/docs/current/sql/match-recognize.html#logical-navigation-functions< / span >
< / span > < span id = "L-140" > < a href = "#L-140" > < span class = "linenos" > 140< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "L-141" > < a href = "#L-141" > < span class = "linenos" > 141< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > find_ancestor< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MatchRecognize< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > ),< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MatchRecognize< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-142" > < a href = "#L-142" > < span class = "linenos" > 142< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > function_fallback_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-143" > < a href = "#L-143" > < span class = "linenos" > 143< / span > < / a >
< / span > < span id = "L-144" > < a href = "#L-144" > < span class = "linenos" > 144< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARBITRARY" < / span > < span class = "p" > )(< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:54:13 +01:00
< / span > < span id = "L-145" > < a href = "#L-145" > < span class = "linenos" > 145< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-146" > < a href = "#L-146" > < span class = "linenos" > 146< / span > < / a >
< / span > < span id = "L-147" > < a href = "#L-147" > < span class = "linenos" > 147< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _unix_to_time_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-148" > < a href = "#L-148" > < span class = "linenos" > 148< / span > < / a > < span class = "n" > scale< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " scale" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-149" > < a href = "#L-149" > < span class = "linenos" > 149< / span > < / a > < span class = "n" > timestamp< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-150" > < a href = "#L-150" > < span class = "linenos" > 150< / span > < / a > < span class = "k" > if< / span > < span class = "n" > scale< / span > < span class = "ow" > in< / span > < span class = "p" > (< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > SECONDS< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-151" > < a href = "#L-151" > < span class = "linenos" > 151< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " FROM_UNIXTIME" < / span > < span class = "p" > )(< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-152" > < a href = "#L-152" > < span class = "linenos" > 152< / span > < / a >
< / span > < span id = "L-153" > < a href = "#L-153" > < span class = "linenos" > 153< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " FROM_UNIXTIME(CAST(< / span > < span class = "si" > {< / span > < span class = "n" > timestamp< / span > < span class = "si" > }< / span > < span class = "s2" > AS DOUBLE) / POW(10, < / span > < span class = "si" > {< / span > < span class = "n" > scale< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-154" > < a href = "#L-154" > < span class = "linenos" > 154< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-155" > < a href = "#L-155" > < span class = "linenos" > 155< / span > < / a >
< / span > < span id = "L-156" > < a href = "#L-156" > < span class = "linenos" > 156< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _to_int< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > :< / span >
< / span > < span id = "L-157" > < a href = "#L-157" > < span class = "linenos" > 157< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "L-158" > < a href = "#L-158" > < span class = "linenos" > 158< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "L-159" > < a href = "#L-159" > < span class = "linenos" > 159< / span > < / a >
< / span > < span id = "L-160" > < a href = "#L-160" > < span class = "linenos" > 160< / span > < / a > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > dialect< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "p" > )< / span >
< / span > < span id = "L-161" > < a href = "#L-161" > < span class = "linenos" > 161< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "ow" > and< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "ow" > not< / span > < span class = "ow" > in< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > INTEGER_TYPES< / span > < span class = "p" > :< / span >
< / span > < span id = "L-162" > < a href = "#L-162" > < span class = "linenos" > 162< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > to< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > BIGINT< / span > < span class = "p" > )< / span >
< / span > < span id = "L-163" > < a href = "#L-163" > < span class = "linenos" > 163< / span > < / a > < span class = "k" > return< / span > < span class = "n" > expression< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-164" > < a href = "#L-164" > < span class = "linenos" > 164< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-165" > < a href = "#L-165" > < span class = "linenos" > 165< / span > < / a >
< / span > < span id = "L-166" > < a href = "#L-166" > < span class = "linenos" > 166< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _build_to_char< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > :< / span >
< / span > < span id = "L-167" > < a href = "#L-167" > < span class = "linenos" > 167< / span > < / a > < span class = "n" > fmt< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > )< / span >
< / span > < span id = "L-168" > < a href = "#L-168" > < span class = "linenos" > 168< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > fmt< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-169" > < a href = "#L-169" > < span class = "linenos" > 169< / span > < / a > < span class = "c1" > # We uppercase this to match Teradata' s format mapping keys< / span >
< / span > < span id = "L-170" > < a href = "#L-170" > < span class = "linenos" > 170< / span > < / a > < span class = "n" > fmt< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " this" < / span > < span class = "p" > ,< / span > < span class = "n" > fmt< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ())< / span >
< / span > < span id = "L-171" > < a href = "#L-171" > < span class = "linenos" > 171< / span > < / a >
< / span > < span id = "L-172" > < a href = "#L-172" > < span class = "linenos" > 172< / span > < / a > < span class = "c1" > # We use " teradata" on purpose here, because the time formats are different in Presto.< / span >
< / span > < span id = "L-173" > < a href = "#L-173" > < span class = "linenos" > 173< / span > < / a > < span class = "c1" > # See https://prestodb.io/docs/current/functions/teradata.html?highlight=to_char#to_char< / span >
< / span > < span id = "L-174" > < a href = "#L-174" > < span class = "linenos" > 174< / span > < / a > < span class = "k" > return< / span > < span class = "n" > build_formatted_time< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > ,< / span > < span class = "s2" > " teradata" < / span > < span class = "p" > )(< / span > < span class = "n" > args< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-175" > < a href = "#L-175" > < span class = "linenos" > 175< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-176" > < a href = "#L-176" > < span class = "linenos" > 176< / span > < / a >
< / span > < span id = "L-177" > < a href = "#L-177" > < span class = "linenos" > 177< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _date_delta_sql< / span > < span class = "p" > (< / span >
< / span > < span id = "L-178" > < a href = "#L-178" > < span class = "linenos" > 178< / span > < / a > < span class = "n" > name< / span > < span class = "p" > :< / span > < span class = "nb" > str< / span > < span class = "p" > ,< / span > < span class = "n" > negate_interval< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-179" > < a href = "#L-179" > < span class = "linenos" > 179< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Callable< / span > < span class = "p" > [[< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > DATE_ADD_OR_SUB< / span > < span class = "p" > ],< / span > < span class = "nb" > str< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-180" > < a href = "#L-180" > < span class = "linenos" > 180< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _delta_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > DATE_ADD_OR_SUB< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-181" > < a href = "#L-181" > < span class = "linenos" > 181< / span > < / a > < span class = "n" > interval< / span > < span class = "o" > =< / span > < span class = "n" > _to_int< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-182" > < a href = "#L-182" > < span class = "linenos" > 182< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-183" > < a href = "#L-183" > < span class = "linenos" > 183< / span > < / a > < span class = "n" > name< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-184" > < a href = "#L-184" > < span class = "linenos" > 184< / span > < / a > < span class = "n" > unit_to_str< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-185" > < a href = "#L-185" > < span class = "linenos" > 185< / span > < / a > < span class = "n" > interval< / span > < span class = "o" > *< / span > < span class = "p" > (< / span > < span class = "o" > -< / span > < span class = "mi" > 1< / span > < span class = "p" > )< / span > < span class = "k" > if< / span > < span class = "n" > negate_interval< / span > < span class = "k" > else< / span > < span class = "n" > interval< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-186" > < a href = "#L-186" > < span class = "linenos" > 186< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-187" > < a href = "#L-187" > < span class = "linenos" > 187< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-188" > < a href = "#L-188" > < span class = "linenos" > 188< / span > < / a >
< / span > < span id = "L-189" > < a href = "#L-189" > < span class = "linenos" > 189< / span > < / a > < span class = "k" > return< / span > < span class = "n" > _delta_sql< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-190" > < a href = "#L-190" > < span class = "linenos" > 190< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-191" > < a href = "#L-191" > < span class = "linenos" > 191< / span > < / a >
< / span > < span id = "L-192" > < a href = "#L-192" > < span class = "linenos" > 192< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Presto< / span > < span class = "p" > (< / span > < span class = "n" > Dialect< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-193" > < a href = "#L-193" > < span class = "linenos" > 193< / span > < / a > < span class = "n" > INDEX_OFFSET< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span >
< / span > < span id = "L-194" > < a href = "#L-194" > < span class = "linenos" > 194< / span > < / a > < span class = "n" > NULL_ORDERING< / span > < span class = "o" > =< / span > < span class = "s2" > " nulls_are_last" < / span >
< / span > < span id = "L-195" > < a href = "#L-195" > < span class = "linenos" > 195< / span > < / a > < span class = "n" > TIME_FORMAT< / span > < span class = "o" > =< / span > < span class = "n" > MySQL< / span > < span class = "o" > .< / span > < span class = "n" > TIME_FORMAT< / span >
< / span > < span id = "L-196" > < a href = "#L-196" > < span class = "linenos" > 196< / span > < / a > < span class = "n" > STRICT_STRING_CONCAT< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-197" > < a href = "#L-197" > < span class = "linenos" > 197< / span > < / a > < span class = "n" > SUPPORTS_SEMI_ANTI_JOIN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-198" > < a href = "#L-198" > < span class = "linenos" > 198< / span > < / a > < span class = "n" > TYPED_DIVISION< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-199" > < a href = "#L-199" > < span class = "linenos" > 199< / span > < / a > < span class = "n" > TABLESAMPLE_SIZE_IS_PERCENT< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-200" > < a href = "#L-200" > < span class = "linenos" > 200< / span > < / a > < span class = "n" > LOG_BASE_FIRST< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "nb" > bool< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "L-201" > < a href = "#L-201" > < span class = "linenos" > 201< / span > < / a >
< / span > < span id = "L-202" > < a href = "#L-202" > < span class = "linenos" > 202< / span > < / a > < span class = "n" > TIME_MAPPING< / span > < span class = "o" > =< / span > < span class = "n" > MySQL< / span > < span class = "o" > .< / span > < span class = "n" > TIME_MAPPING< / span >
< / span > < span id = "L-203" > < a href = "#L-203" > < span class = "linenos" > 203< / span > < / a >
< / span > < span id = "L-204" > < a href = "#L-204" > < span class = "linenos" > 204< / span > < / a > < span class = "c1" > # https://github.com/trinodb/trino/issues/17< / span >
< / span > < span id = "L-205" > < a href = "#L-205" > < span class = "linenos" > 205< / span > < / a > < span class = "c1" > # https://github.com/trinodb/trino/issues/12289< / span >
< / span > < span id = "L-206" > < a href = "#L-206" > < span class = "linenos" > 206< / span > < / a > < span class = "c1" > # https://github.com/prestodb/presto/issues/2863< / span >
< / span > < span id = "L-207" > < a href = "#L-207" > < span class = "linenos" > 207< / span > < / a > < span class = "n" > NORMALIZATION_STRATEGY< / span > < span class = "o" > =< / span > < span class = "n" > NormalizationStrategy< / span > < span class = "o" > .< / span > < span class = "n" > CASE_INSENSITIVE< / span >
< / span > < span id = "L-208" > < a href = "#L-208" > < span class = "linenos" > 208< / span > < / a >
< / span > < span id = "L-209" > < a href = "#L-209" > < span class = "linenos" > 209< / span > < / a > < span class = "c1" > # The result of certain math functions in Presto/Trino is of type< / span >
< / span > < span id = "L-210" > < a href = "#L-210" > < span class = "linenos" > 210< / span > < / a > < span class = "c1" > # equal to the input type e.g: FLOOR(5.5/2) -> DECIMAL, FLOOR(5/2) -> BIGINT< / span >
< / span > < span id = "L-211" > < a href = "#L-211" > < span class = "linenos" > 211< / span > < / a > < span class = "n" > ANNOTATORS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-212" > < a href = "#L-212" > < span class = "linenos" > 212< / span > < / a > < span class = "o" > **< / span > < span class = "n" > Dialect< / span > < span class = "o" > .< / span > < span class = "n" > ANNOTATORS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-213" > < a href = "#L-213" > < span class = "linenos" > 213< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Floor< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-214" > < a href = "#L-214" > < span class = "linenos" > 214< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Ceil< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-215" > < a href = "#L-215" > < span class = "linenos" > 215< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Mod< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ,< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-216" > < a href = "#L-216" > < span class = "linenos" > 216< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Round< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-217" > < a href = "#L-217" > < span class = "linenos" > 217< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Sign< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-218" > < a href = "#L-218" > < span class = "linenos" > 218< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Abs< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-219" > < a href = "#L-219" > < span class = "linenos" > 219< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Rand< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-220" > < a href = "#L-220" > < span class = "linenos" > 220< / span > < / a > < span class = "k" > if< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-221" > < a href = "#L-221" > < span class = "linenos" > 221< / span > < / a > < span class = "k" > else< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_type< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DOUBLE< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-222" > < a href = "#L-222" > < span class = "linenos" > 222< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-223" > < a href = "#L-223" > < span class = "linenos" > 223< / span > < / a >
< / span > < span id = "L-224" > < a href = "#L-224" > < span class = "linenos" > 224< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Tokenizer< / span > < span class = "p" > (< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-225" > < a href = "#L-225" > < span class = "linenos" > 225< / span > < / a > < span class = "n" > UNICODE_STRINGS< / span > < span class = "o" > =< / span > < span class = "p" > [< / span >
< / span > < span id = "L-226" > < a href = "#L-226" > < span class = "linenos" > 226< / span > < / a > < span class = "p" > (< / span > < span class = "n" > prefix< / span > < span class = "o" > +< / span > < span class = "n" > q< / span > < span class = "p" > ,< / span > < span class = "n" > q< / span > < span class = "p" > )< / span >
< / span > < span id = "L-227" > < a href = "#L-227" > < span class = "linenos" > 227< / span > < / a > < span class = "k" > for< / span > < span class = "n" > q< / span > < span class = "ow" > in< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ],< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "o" > .< / span > < span class = "n" > QUOTES< / span > < span class = "p" > )< / span >
< / span > < span id = "L-228" > < a href = "#L-228" > < span class = "linenos" > 228< / span > < / a > < span class = "k" > for< / span > < span class = "n" > prefix< / span > < span class = "ow" > in< / span > < span class = "p" > (< / span > < span class = "s2" > " U& " < / span > < span class = "p" > ,< / span > < span class = "s2" > " u& " < / span > < span class = "p" > )< / span >
< / span > < span id = "L-229" > < a href = "#L-229" > < span class = "linenos" > 229< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "L-230" > < a href = "#L-230" > < span class = "linenos" > 230< / span > < / a >
< / span > < span id = "L-231" > < a href = "#L-231" > < span class = "linenos" > 231< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-232" > < a href = "#L-232" > < span class = "linenos" > 232< / span > < / a > < span class = "o" > **< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "o" > .< / span > < span class = "n" > KEYWORDS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-233" > < a href = "#L-233" > < span class = "linenos" > 233< / span > < / a > < span class = "s2" > " START" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BEGIN< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-234" > < a href = "#L-234" > < span class = "linenos" > 234< / span > < / a > < span class = "s2" > " MATCH_RECOGNIZE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > MATCH_RECOGNIZE< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-235" > < a href = "#L-235" > < span class = "linenos" > 235< / span > < / a > < span class = "s2" > " ROW" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > STRUCT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-236" > < a href = "#L-236" > < span class = "linenos" > 236< / span > < / a > < span class = "s2" > " IPADDRESS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > IPADDRESS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-237" > < a href = "#L-237" > < span class = "linenos" > 237< / span > < / a > < span class = "s2" > " IPPREFIX" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > IPPREFIX< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-238" > < a href = "#L-238" > < span class = "linenos" > 238< / span > < / a > < span class = "s2" > " TDIGEST" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TDIGEST< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-239" > < a href = "#L-239" > < span class = "linenos" > 239< / span > < / a > < span class = "s2" > " HYPERLOGLOG" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > HLLSKETCH< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-240" > < a href = "#L-240" > < span class = "linenos" > 240< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-241" > < a href = "#L-241" > < span class = "linenos" > 241< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " /*+" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-242" > < a href = "#L-242" > < span class = "linenos" > 242< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " QUALIFY" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-243" > < a href = "#L-243" > < span class = "linenos" > 243< / span > < / a >
< / span > < span id = "L-244" > < a href = "#L-244" > < span class = "linenos" > 244< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Parser< / span > < span class = "p" > (< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-245" > < a href = "#L-245" > < span class = "linenos" > 245< / span > < / a > < span class = "n" > VALUES_FOLLOWED_BY_PAREN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-246" > < a href = "#L-246" > < span class = "linenos" > 246< / span > < / a >
< / span > < span id = "L-247" > < a href = "#L-247" > < span class = "linenos" > 247< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-248" > < a href = "#L-248" > < span class = "linenos" > 248< / span > < / a > < span class = "o" > **< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "o" > .< / span > < span class = "n" > FUNCTIONS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-249" > < a href = "#L-249" > < span class = "linenos" > 249< / span > < / a > < span class = "s2" > " ARBITRARY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AnyValue< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-250" > < a href = "#L-250" > < span class = "linenos" > 250< / span > < / a > < span class = "s2" > " APPROX_DISTINCT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxDistinct< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-251" > < a href = "#L-251" > < span class = "linenos" > 251< / span > < / a > < span class = "s2" > " APPROX_PERCENTILE" < / span > < span class = "p" > :< / span > < span class = "n" > _build_approx_percentile< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-252" > < a href = "#L-252" > < span class = "linenos" > 252< / span > < / a > < span class = "s2" > " BITWISE_AND" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseAnd< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-253" > < a href = "#L-253" > < span class = "linenos" > 253< / span > < / a > < span class = "s2" > " BITWISE_NOT" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseNot< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )),< / span >
< / span > < span id = "L-254" > < a href = "#L-254" > < span class = "linenos" > 254< / span > < / a > < span class = "s2" > " BITWISE_OR" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseOr< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-255" > < a href = "#L-255" > < span class = "linenos" > 255< / span > < / a > < span class = "s2" > " BITWISE_XOR" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-256" > < a href = "#L-256" > < span class = "linenos" > 256< / span > < / a > < span class = "s2" > " CARDINALITY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySize< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-257" > < a href = "#L-257" > < span class = "linenos" > 257< / span > < / a > < span class = "s2" > " CONTAINS" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayContains< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-258" > < a href = "#L-258" > < span class = "linenos" > 258< / span > < / a > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateAdd< / span > < span class = "p" > (< / span >
< / span > < span id = "L-259" > < a href = "#L-259" > < span class = "linenos" > 259< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )< / span >
< / span > < span id = "L-260" > < a href = "#L-260" > < span class = "linenos" > 260< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-261" > < a href = "#L-261" > < span class = "linenos" > 261< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > (< / span >
< / span > < span id = "L-262" > < a href = "#L-262" > < span class = "linenos" > 262< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )< / span >
< / span > < span id = "L-263" > < a href = "#L-263" > < span class = "linenos" > 263< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-264" > < a href = "#L-264" > < span class = "linenos" > 264< / span > < / a > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > :< / span > < span class = "n" > build_formatted_time< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > ,< / span > < span class = "s2" > " presto" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-265" > < a href = "#L-265" > < span class = "linenos" > 265< / span > < / a > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > :< / span > < span class = "n" > build_formatted_time< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToTime< / span > < span class = "p" > ,< / span > < span class = "s2" > " presto" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-266" > < a href = "#L-266" > < span class = "linenos" > 266< / span > < / a > < span class = "s2" > " DATE_TRUNC" < / span > < span class = "p" > :< / span > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-267" > < a href = "#L-267" > < span class = "linenos" > 267< / span > < / a > < span class = "s2" > " DAY_OF_WEEK" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeekIso< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-268" > < a href = "#L-268" > < span class = "linenos" > 268< / span > < / a > < span class = "s2" > " ELEMENT_AT" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Bracket< / span > < span class = "p" > (< / span >
< / span > < span id = "L-269" > < a href = "#L-269" > < span class = "linenos" > 269< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > )],< / span > < span class = "n" > offset< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > safe< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-270" > < a href = "#L-270" > < span class = "linenos" > 270< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-271" > < a href = "#L-271" > < span class = "linenos" > 271< / span > < / a > < span class = "s2" > " FROM_HEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Unhex< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-272" > < a href = "#L-272" > < span class = "linenos" > 272< / span > < / a > < span class = "s2" > " FROM_UNIXTIME" < / span > < span class = "p" > :< / span > < span class = "n" > _build_from_unixtime< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-273" > < a href = "#L-273" > < span class = "linenos" > 273< / span > < / a > < span class = "s2" > " FROM_UTF8" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Decode< / span > < span class = "p" > (< / span >
< / span > < span id = "L-274" > < a href = "#L-274" > < span class = "linenos" > 274< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-275" > < a href = "#L-275" > < span class = "linenos" > 275< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-276" > < a href = "#L-276" > < span class = "linenos" > 276< / span > < / a > < span class = "s2" > " LEVENSHTEIN_DISTANCE" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Levenshtein< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-277" > < a href = "#L-277" > < span class = "linenos" > 277< / span > < / a > < span class = "s2" > " NOW" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTimestamp< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-278" > < a href = "#L-278" > < span class = "linenos" > 278< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtract< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-279" > < a href = "#L-279" > < span class = "linenos" > 279< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT_ALL" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtractAll< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-280" > < a href = "#L-280" > < span class = "linenos" > 280< / span > < / a > < span class = "s2" > " REGEXP_REPLACE" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpReplace< / span > < span class = "p" > (< / span >
< / span > < span id = "L-281" > < a href = "#L-281" > < span class = "linenos" > 281< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-282" > < a href = "#L-282" > < span class = "linenos" > 282< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-283" > < a href = "#L-283" > < span class = "linenos" > 283< / span > < / a > < span class = "n" > replacement< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " " < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-284" > < a href = "#L-284" > < span class = "linenos" > 284< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-285" > < a href = "#L-285" > < span class = "linenos" > 285< / span > < / a > < span class = "s2" > " ROW" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-286" > < a href = "#L-286" > < span class = "linenos" > 286< / span > < / a > < span class = "s2" > " SEQUENCE" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-287" > < a href = "#L-287" > < span class = "linenos" > 287< / span > < / a > < span class = "s2" > " SET_AGG" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayUniqueAgg< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-288" > < a href = "#L-288" > < span class = "linenos" > 288< / span > < / a > < span class = "s2" > " SPLIT_TO_MAP" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToMap< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-289" > < a href = "#L-289" > < span class = "linenos" > 289< / span > < / a > < span class = "s2" > " STRPOS" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > (< / span >
< / span > < span id = "L-290" > < a href = "#L-290" > < span class = "linenos" > 290< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > substr< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > instance< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span >
< / span > < span id = "L-291" > < a href = "#L-291" > < span class = "linenos" > 291< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-292" > < a href = "#L-292" > < span class = "linenos" > 292< / span > < / a > < span class = "s2" > " TO_CHAR" < / span > < span class = "p" > :< / span > < span class = "n" > _build_to_char< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-293" > < a href = "#L-293" > < span class = "linenos" > 293< / span > < / a > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToUnix< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-294" > < a href = "#L-294" > < span class = "linenos" > 294< / span > < / a > < span class = "s2" > " TO_UTF8" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > (< / span >
< / span > < span id = "L-295" > < a href = "#L-295" > < span class = "linenos" > 295< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-296" > < a href = "#L-296" > < span class = "linenos" > 296< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-297" > < a href = "#L-297" > < span class = "linenos" > 297< / span > < / a > < span class = "s2" > " MD5" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-298" > < a href = "#L-298" > < span class = "linenos" > 298< / span > < / a > < span class = "s2" > " SHA256" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > length< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > number< / span > < span class = "p" > (< / span > < span class = "mi" > 256< / span > < span class = "p" > )),< / span >
< / span > < span id = "L-299" > < a href = "#L-299" > < span class = "linenos" > 299< / span > < / a > < span class = "s2" > " SHA512" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > length< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > number< / span > < span class = "p" > (< / span > < span class = "mi" > 512< / span > < span class = "p" > )),< / span >
< / span > < span id = "L-300" > < a href = "#L-300" > < span class = "linenos" > 300< / span > < / a > < span class = "p" > }< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-301" > < a href = "#L-301" > < span class = "linenos" > 301< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-302" > < a href = "#L-302" > < span class = "linenos" > 302< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > =< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "o" > .< / span > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > copy< / span > < span class = "p" > ()< / span >
< / span > < span id = "L-303" > < a href = "#L-303" > < span class = "linenos" > 303< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " TRIM" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-304" > < a href = "#L-304" > < span class = "linenos" > 304< / span > < / a >
< / span > < span id = "L-305" > < a href = "#L-305" > < span class = "linenos" > 305< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Generator< / span > < span class = "p" > (< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-306" > < a href = "#L-306" > < span class = "linenos" > 306< / span > < / a > < span class = "n" > INTERVAL_ALLOWS_PLURAL_FORM< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-307" > < a href = "#L-307" > < span class = "linenos" > 307< / span > < / a > < span class = "n" > JOIN_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-308" > < a href = "#L-308" > < span class = "linenos" > 308< / span > < / a > < span class = "n" > TABLE_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-309" > < a href = "#L-309" > < span class = "linenos" > 309< / span > < / a > < span class = "n" > QUERY_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-310" > < a href = "#L-310" > < span class = "linenos" > 310< / span > < / a > < span class = "n" > IS_BOOL_ALLOWED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-311" > < a href = "#L-311" > < span class = "linenos" > 311< / span > < / a > < span class = "n" > TZ_TO_WITH_TIME_ZONE< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-312" > < a href = "#L-312" > < span class = "linenos" > 312< / span > < / a > < span class = "n" > NVL2_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-313" > < a href = "#L-313" > < span class = "linenos" > 313< / span > < / a > < span class = "n" > STRUCT_DELIMITER< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "s2" > " (" < / span > < span class = "p" > ,< / span > < span class = "s2" > " )" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-314" > < a href = "#L-314" > < span class = "linenos" > 314< / span > < / a > < span class = "n" > LIMIT_ONLY_LITERALS< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-315" > < a href = "#L-315" > < span class = "linenos" > 315< / span > < / a > < span class = "n" > SUPPORTS_SINGLE_ARG_CONCAT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-316" > < a href = "#L-316" > < span class = "linenos" > 316< / span > < / a > < span class = "n" > LIKE_PROPERTY_INSIDE_SCHEMA< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-317" > < a href = "#L-317" > < span class = "linenos" > 317< / span > < / a > < span class = "n" > MULTI_ARG_DISTINCT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-318" > < a href = "#L-318" > < span class = "linenos" > 318< / span > < / a > < span class = "n" > SUPPORTS_TO_NUMBER< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-319" > < a href = "#L-319" > < span class = "linenos" > 319< / span > < / a > < span class = "n" > HEX_FUNC< / span > < span class = "o" > =< / span > < span class = "s2" > " TO_HEX" < / span >
< / span > < span id = "L-320" > < a href = "#L-320" > < span class = "linenos" > 320< / span > < / a > < span class = "n" > PARSE_JSON_NAME< / span > < span class = "o" > =< / span > < span class = "s2" > " JSON_PARSE" < / span >
< / span > < span id = "L-321" > < a href = "#L-321" > < span class = "linenos" > 321< / span > < / a > < span class = "n" > PAD_FILL_PATTERN_IS_REQUIRED< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-322" > < a href = "#L-322" > < span class = "linenos" > 322< / span > < / a > < span class = "n" > EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-323" > < a href = "#L-323" > < span class = "linenos" > 323< / span > < / a > < span class = "n" > SUPPORTS_MEDIAN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-324" > < a href = "#L-324" > < span class = "linenos" > 324< / span > < / a > < span class = "n" > ARRAY_SIZE_NAME< / span > < span class = "o" > =< / span > < span class = "s2" > " CARDINALITY" < / span >
< / span > < span id = "L-325" > < a href = "#L-325" > < span class = "linenos" > 325< / span > < / a >
< / span > < span id = "L-326" > < a href = "#L-326" > < span class = "linenos" > 326< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-327" > < a href = "#L-327" > < span class = "linenos" > 327< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-328" > < a href = "#L-328" > < span class = "linenos" > 328< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LocationProperty< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Properties< / span > < span class = "o" > .< / span > < span class = "n" > Location< / span > < span class = "o" > .< / span > < span class = "n" > UNSUPPORTED< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-329" > < a href = "#L-329" > < span class = "linenos" > 329< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > VolatileProperty< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Properties< / span > < span class = "o" > .< / span > < span class = "n" > Location< / span > < span class = "o" > .< / span > < span class = "n" > UNSUPPORTED< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-330" > < a href = "#L-330" > < span class = "linenos" > 330< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-331" > < a href = "#L-331" > < span class = "linenos" > 331< / span > < / a >
< / span > < span id = "L-332" > < a href = "#L-332" > < span class = "linenos" > 332< / span > < / a > < span class = "n" > TYPE_MAPPING< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-333" > < a href = "#L-333" > < span class = "linenos" > 333< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > TYPE_MAPPING< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-334" > < a href = "#L-334" > < span class = "linenos" > 334< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > BINARY< / span > < span class = "p" > :< / span > < span class = "s2" > " VARBINARY" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-335" > < a href = "#L-335" > < span class = "linenos" > 335< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > BIT< / span > < span class = "p" > :< / span > < span class = "s2" > " BOOLEAN" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-336" > < a href = "#L-336" > < span class = "linenos" > 336< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATETIME< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-337" > < a href = "#L-337" > < span class = "linenos" > 337< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATETIME64< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-338" > < a href = "#L-338" > < span class = "linenos" > 338< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > FLOAT< / span > < span class = "p" > :< / span > < span class = "s2" > " REAL" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-339" > < a href = "#L-339" > < span class = "linenos" > 339< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > HLLSKETCH< / span > < span class = "p" > :< / span > < span class = "s2" > " HYPERLOGLOG" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-340" > < a href = "#L-340" > < span class = "linenos" > 340< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > INT< / span > < span class = "p" > :< / span > < span class = "s2" > " INTEGER" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-341" > < a href = "#L-341" > < span class = "linenos" > 341< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > STRUCT< / span > < span class = "p" > :< / span > < span class = "s2" > " ROW" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-342" > < a href = "#L-342" > < span class = "linenos" > 342< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > :< / span > < span class = "s2" > " VARCHAR" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-343" > < a href = "#L-343" > < span class = "linenos" > 343< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMPTZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-344" > < a href = "#L-344" > < span class = "linenos" > 344< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMPNTZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-345" > < a href = "#L-345" > < span class = "linenos" > 345< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMETZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-346" > < a href = "#L-346" > < span class = "linenos" > 346< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-347" > < a href = "#L-347" > < span class = "linenos" > 347< / span > < / a >
< / span > < span id = "L-348" > < a href = "#L-348" > < span class = "linenos" > 348< / span > < / a > < span class = "n" > TRANSFORMS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-349" > < a href = "#L-349" > < span class = "linenos" > 349< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > TRANSFORMS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-350" > < a href = "#L-350" > < span class = "linenos" > 350< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AnyValue< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARBITRARY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-351" > < a href = "#L-351" > < span class = "linenos" > 351< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxQuantile< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " APPROX_PERCENTILE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-352" > < a href = "#L-352" > < span class = "linenos" > 352< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMax< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAX_BY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-353" > < a href = "#L-353" > < span class = "linenos" > 353< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMin< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MIN_BY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-354" > < a href = "#L-354" > < span class = "linenos" > 354< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Array< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " ARRAY[< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > flat< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ]" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-355" > < a href = "#L-355" > < span class = "linenos" > 355< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayAny< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ANY_MATCH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-356" > < a href = "#L-356" > < span class = "linenos" > 356< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayConcat< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " CONCAT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-357" > < a href = "#L-357" > < span class = "linenos" > 357< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayContains< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " CONTAINS" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-358" > < a href = "#L-358" > < span class = "linenos" > 358< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayToString< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_JOIN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-359" > < a href = "#L-359" > < span class = "linenos" > 359< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayUniqueAgg< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SET_AGG" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-360" > < a href = "#L-360" > < span class = "linenos" > 360< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AtTimeZone< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " AT_TIMEZONE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-361" > < a href = "#L-361" > < span class = "linenos" > 361< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseAnd< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_AND" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-362" > < a href = "#L-362" > < span class = "linenos" > 362< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseLeftShift< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-363" > < a href = "#L-363" > < span class = "linenos" > 363< / span > < / a > < span class = "s2" > " BITWISE_ARITHMETIC_SHIFT_LEFT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span >
< / span > < span id = "L-364" > < a href = "#L-364" > < span class = "linenos" > 364< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-365" > < a href = "#L-365" > < span class = "linenos" > 365< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseNot< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_NOT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-366" > < a href = "#L-366" > < span class = "linenos" > 366< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseOr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_OR" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-367" > < a href = "#L-367" > < span class = "linenos" > 367< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseRightShift< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-368" > < a href = "#L-368" > < span class = "linenos" > 368< / span > < / a > < span class = "s2" > " BITWISE_ARITHMETIC_SHIFT_RIGHT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span >
< / span > < span id = "L-369" > < a href = "#L-369" > < span class = "linenos" > 369< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-370" > < a href = "#L-370" > < span class = "linenos" > 370< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_XOR" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-371" > < a href = "#L-371" > < span class = "linenos" > 371< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Cast< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > epoch_cast_to_ts< / span > < span class = "p" > ]),< / span >
< / span > < span id = "L-372" > < a href = "#L-372" > < span class = "linenos" > 372< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTime< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "o" > *< / span > < span class = "n" > _< / span > < span class = "p" > :< / span > < span class = "s2" > " CURRENT_TIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-373" > < a href = "#L-373" > < span class = "linenos" > 373< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTimestamp< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "o" > *< / span > < span class = "n" > _< / span > < span class = "p" > :< / span > < span class = "s2" > " CURRENT_TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-374" > < a href = "#L-374" > < span class = "linenos" > 374< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-375" > < a href = "#L-375" > < span class = "linenos" > 375< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-376" > < a href = "#L-376" > < span class = "linenos" > 376< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / span > < span class = "n" > unit_to_str< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-377" > < a href = "#L-377" > < span class = "linenos" > 377< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-378" > < a href = "#L-378" > < span class = "linenos" > 378< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateStrToDate< / span > < span class = "p" > :< / span > < span class = "n" > datestrtodate_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-379" > < a href = "#L-379" > < span class = "linenos" > 379< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateToDi< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-380" > < a href = "#L-380" > < span class = "linenos" > 380< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(DATE_FORMAT(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > , < / span > < span class = "si" > {< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > DATEINT_FORMAT< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-381" > < a href = "#L-381" > < span class = "linenos" > 381< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateSub< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ,< / span > < span class = "n" > negate_interval< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-382" > < a href = "#L-382" > < span class = "linenos" > 382< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeek< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " ((< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s1" > ' DAY_OF_WEEK' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > % 7) + 1)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-383" > < a href = "#L-383" > < span class = "linenos" > 383< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeekIso< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAY_OF_WEEK" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-384" > < a href = "#L-384" > < span class = "linenos" > 384< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Decode< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > encode_decode_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " FROM_UTF8" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-385" > < a href = "#L-385" > < span class = "linenos" > 385< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DiToDate< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-386" > < a href = "#L-386" > < span class = "linenos" > 386< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(DATE_PARSE(CAST(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS VARCHAR), < / span > < span class = "si" > {< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > DATEINT_FORMAT< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS DATE)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-387" > < a href = "#L-387" > < span class = "linenos" > 387< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > encode_decode_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " TO_UTF8" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-388" > < a href = "#L-388" > < span class = "linenos" > 388< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FileFormatProperty< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " FORMAT=' < / span > < span class = "si" > {< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ()< / span > < span class = "si" > }< / span > < span class = "s2" > ' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-389" > < a href = "#L-389" > < span class = "linenos" > 389< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > First< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-390" > < a href = "#L-390" > < span class = "linenos" > 390< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FirstValue< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-391" > < a href = "#L-391" > < span class = "linenos" > 391< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FromTimeZone< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-392" > < a href = "#L-392" > < span class = "linenos" > 392< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " WITH_TIMEZONE(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > , < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' zone' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AT TIME ZONE ' UTC' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-393" > < a href = "#L-393" > < span class = "linenos" > 393< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "p" > :< / span > < span class = "n" > sequence_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-394" > < a href = "#L-394" > < span class = "linenos" > 394< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateDateArray< / span > < span class = "p" > :< / span > < span class = "n" > sequence_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-395" > < a href = "#L-395" > < span class = "linenos" > 395< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Group< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > unalias_group< / span > < span class = "p" > ]),< / span >
< / span > < span id = "L-396" > < a href = "#L-396" > < span class = "linenos" > 396< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > If< / span > < span class = "p" > :< / span > < span class = "n" > if_sql< / span > < span class = "p" > (),< / span >
< / span > < span id = "L-397" > < a href = "#L-397" > < span class = "linenos" > 397< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ILike< / span > < span class = "p" > :< / span > < span class = "n" > no_ilike_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-398" > < a href = "#L-398" > < span class = "linenos" > 398< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Initcap< / span > < span class = "p" > :< / span > < span class = "n" > _initcap_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-399" > < a href = "#L-399" > < span class = "linenos" > 399< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > jsonextract_sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-400" > < a href = "#L-400" > < span class = "linenos" > 400< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Last< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-401" > < a href = "#L-401" > < span class = "linenos" > 401< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LastValue< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-402" > < a href = "#L-402" > < span class = "linenos" > 402< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LastDay< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " LAST_DAY_OF_MONTH" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-403" > < a href = "#L-403" > < span class = "linenos" > 403< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Lateral< / span > < span class = "p" > :< / span > < span class = "n" > explode_to_unnest_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-404" > < a href = "#L-404" > < span class = "linenos" > 404< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Left< / span > < span class = "p" > :< / span > < span class = "n" > left_to_substring_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-405" > < a href = "#L-405" > < span class = "linenos" > 405< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Levenshtein< / span > < span class = "p" > :< / span > < span class = "n" > unsupported_args< / span > < span class = "p" > (< / span > < span class = "s2" > " ins_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " del_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " sub_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " max_dist" < / span > < span class = "p" > )(< / span >
< / span > < span id = "L-406" > < a href = "#L-406" > < span class = "linenos" > 406< / span > < / a > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LEVENSHTEIN_DISTANCE" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-407" > < a href = "#L-407" > < span class = "linenos" > 407< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-408" > < a href = "#L-408" > < span class = "linenos" > 408< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LogicalAnd< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " BOOL_AND" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-409" > < a href = "#L-409" > < span class = "linenos" > 409< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LogicalOr< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " BOOL_OR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-410" > < a href = "#L-410" > < span class = "linenos" > 410< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pivot< / span > < span class = "p" > :< / span > < span class = "n" > no_pivot_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-411" > < a href = "#L-411" > < span class = "linenos" > 411< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Quantile< / span > < span class = "p" > :< / span > < span class = "n" > _quantile_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-412" > < a href = "#L-412" > < span class = "linenos" > 412< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtract< / span > < span class = "p" > :< / span > < span class = "n" > regexp_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-413" > < a href = "#L-413" > < span class = "linenos" > 413< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtractAll< / span > < span class = "p" > :< / span > < span class = "n" > regexp_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-414" > < a href = "#L-414" > < span class = "linenos" > 414< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Right< / span > < span class = "p" > :< / span > < span class = "n" > right_to_substring_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-415" > < a href = "#L-415" > < span class = "linenos" > 415< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SafeDivide< / span > < span class = "p" > :< / span > < span class = "n" > no_safe_divide_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-416" > < a href = "#L-416" > < span class = "linenos" > 416< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > :< / span > < span class = "n" > _schema_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-417" > < a href = "#L-417" > < span class = "linenos" > 417< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SchemaCommentProperty< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > naked_property< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-418" > < a href = "#L-418" > < span class = "linenos" > 418< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > (< / span >
< / span > < span id = "L-419" > < a href = "#L-419" > < span class = "linenos" > 419< / span > < / a > < span class = "p" > [< / span >
< / span > < span id = "L-420" > < a href = "#L-420" > < span class = "linenos" > 420< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_qualify< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-421" > < a href = "#L-421" > < span class = "linenos" > 421< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_distinct_on< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-422" > < a href = "#L-422" > < span class = "linenos" > 422< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > explode_to_unnest< / span > < span class = "p" > (< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-423" > < a href = "#L-423" > < span class = "linenos" > 423< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_semi_and_anti_joins< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-424" > < a href = "#L-424" > < span class = "linenos" > 424< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "L-425" > < a href = "#L-425" > < span class = "linenos" > 425< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-426" > < a href = "#L-426" > < span class = "linenos" > 426< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "p" > :< / span > < span class = "n" > _no_sort_array< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-427" > < a href = "#L-427" > < span class = "linenos" > 427< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > str_position_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > generate_instance< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-428" > < a href = "#L-428" > < span class = "linenos" > 428< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToDate< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / span > < span class = "si" > {< / span > < span class = "n" > _str_to_time_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > e< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-429" > < a href = "#L-429" > < span class = "linenos" > 429< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToMap< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SPLIT_TO_MAP" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-430" > < a href = "#L-430" > < span class = "linenos" > 430< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToTime< / span > < span class = "p" > :< / span > < span class = "n" > _str_to_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-431" > < a href = "#L-431" > < span class = "linenos" > 431< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StructExtract< / span > < span class = "p" > :< / span > < span class = "n" > struct_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-432" > < a href = "#L-432" > < span class = "linenos" > 432< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Table< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > unnest_generate_series< / span > < span class = "p" > ]),< / span >
< / span > < span id = "L-433" > < a href = "#L-433" > < span class = "linenos" > 433< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Timestamp< / span > < span class = "p" > :< / span > < span class = "n" > no_timestamp_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-434" > < a href = "#L-434" > < span class = "linenos" > 434< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-435" > < a href = "#L-435" > < span class = "linenos" > 435< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampTrunc< / span > < span class = "p" > :< / span > < span class = "n" > timestamptrunc_sql< / span > < span class = "p" > (),< / span >
< / span > < span id = "L-436" > < a href = "#L-436" > < span class = "linenos" > 436< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToDate< / span > < span class = "p" > :< / span > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-437" > < a href = "#L-437" > < span class = "linenos" > 437< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToTime< / span > < span class = "p" > :< / span > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-438" > < a href = "#L-438" > < span class = "linenos" > 438< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToUnix< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-439" > < a href = "#L-439" > < span class = "linenos" > 439< / span > < / a > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > TIME_FORMAT< / span > < span class = "p" > )< / span >
< / span > < span id = "L-440" > < a href = "#L-440" > < span class = "linenos" > 440< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-441" > < a href = "#L-441" > < span class = "linenos" > 441< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )),< / span >
< / span > < span id = "L-442" > < a href = "#L-442" > < span class = "linenos" > 442< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToUnix< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-443" > < a href = "#L-443" > < span class = "linenos" > 443< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ToChar< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )),< / span >
< / span > < span id = "L-444" > < a href = "#L-444" > < span class = "linenos" > 444< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TryCast< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > epoch_cast_to_ts< / span > < span class = "p" > ]),< / span >
< / span > < span id = "L-445" > < a href = "#L-445" > < span class = "linenos" > 445< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDiToDi< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-446" > < a href = "#L-446" > < span class = "linenos" > 446< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(SUBSTR(REPLACE(CAST(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS VARCHAR), ' -' , ' ' ), 1, 8) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-447" > < a href = "#L-447" > < span class = "linenos" > 447< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_add_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-448" > < a href = "#L-448" > < span class = "linenos" > 448< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsDiff< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_diff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-449" > < a href = "#L-449" > < span class = "linenos" > 449< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsToDate< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_to_date_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-450" > < a href = "#L-450" > < span class = "linenos" > 450< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Unhex< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " FROM_HEX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-451" > < a href = "#L-451" > < span class = "linenos" > 451< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-452" > < a href = "#L-452" > < span class = "linenos" > 452< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " DATE_FORMAT(FROM_UNIXTIME(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ), < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-453" > < a href = "#L-453" > < span class = "linenos" > 453< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "p" > :< / span > < span class = "n" > _unix_to_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-454" > < a href = "#L-454" > < span class = "linenos" > 454< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTimeStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-455" > < a href = "#L-455" > < span class = "linenos" > 455< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(FROM_UNIXTIME(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS VARCHAR)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-456" > < a href = "#L-456" > < span class = "linenos" > 456< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > VariancePop< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " VAR_POP" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-457" > < a href = "#L-457" > < span class = "linenos" > 457< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > With< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > add_recursive_cte_column_names< / span > < span class = "p" > ]),< / span >
< / span > < span id = "L-458" > < a href = "#L-458" > < span class = "linenos" > 458< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > WithinGroup< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > (< / span >
< / span > < span id = "L-459" > < a href = "#L-459" > < span class = "linenos" > 459< / span > < / a > < span class = "p" > [< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > remove_within_group_for_percentiles< / span > < span class = "p" > ]< / span >
< / span > < span id = "L-460" > < a href = "#L-460" > < span class = "linenos" > 460< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-461" > < a href = "#L-461" > < span class = "linenos" > 461< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Xor< / span > < span class = "p" > :< / span > < span class = "n" > bool_xor_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-462" > < a href = "#L-462" > < span class = "linenos" > 462< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MD5" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-463" > < a href = "#L-463" > < span class = "linenos" > 463< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SHA1" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-464" > < a href = "#L-464" > < span class = "linenos" > 464< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > :< / span > < span class = "n" > sha256_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-465" > < a href = "#L-465" > < span class = "linenos" > 465< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-466" > < a href = "#L-466" > < span class = "linenos" > 466< / span > < / a >
< / span > < span id = "L-467" > < a href = "#L-467" > < span class = "linenos" > 467< / span > < / a > < span class = "n" > RESERVED_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-468" > < a href = "#L-468" > < span class = "linenos" > 468< / span > < / a > < span class = "s2" > " alter" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-469" > < a href = "#L-469" > < span class = "linenos" > 469< / span > < / a > < span class = "s2" > " and" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-470" > < a href = "#L-470" > < span class = "linenos" > 470< / span > < / a > < span class = "s2" > " as" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-471" > < a href = "#L-471" > < span class = "linenos" > 471< / span > < / a > < span class = "s2" > " between" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-472" > < a href = "#L-472" > < span class = "linenos" > 472< / span > < / a > < span class = "s2" > " by" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-473" > < a href = "#L-473" > < span class = "linenos" > 473< / span > < / a > < span class = "s2" > " case" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-474" > < a href = "#L-474" > < span class = "linenos" > 474< / span > < / a > < span class = "s2" > " cast" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-475" > < a href = "#L-475" > < span class = "linenos" > 475< / span > < / a > < span class = "s2" > " constraint" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-476" > < a href = "#L-476" > < span class = "linenos" > 476< / span > < / a > < span class = "s2" > " create" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-477" > < a href = "#L-477" > < span class = "linenos" > 477< / span > < / a > < span class = "s2" > " cross" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-478" > < a href = "#L-478" > < span class = "linenos" > 478< / span > < / a > < span class = "s2" > " current_time" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-479" > < a href = "#L-479" > < span class = "linenos" > 479< / span > < / a > < span class = "s2" > " current_timestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-480" > < a href = "#L-480" > < span class = "linenos" > 480< / span > < / a > < span class = "s2" > " deallocate" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-481" > < a href = "#L-481" > < span class = "linenos" > 481< / span > < / a > < span class = "s2" > " delete" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-482" > < a href = "#L-482" > < span class = "linenos" > 482< / span > < / a > < span class = "s2" > " describe" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-483" > < a href = "#L-483" > < span class = "linenos" > 483< / span > < / a > < span class = "s2" > " distinct" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-484" > < a href = "#L-484" > < span class = "linenos" > 484< / span > < / a > < span class = "s2" > " drop" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-485" > < a href = "#L-485" > < span class = "linenos" > 485< / span > < / a > < span class = "s2" > " else" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-486" > < a href = "#L-486" > < span class = "linenos" > 486< / span > < / a > < span class = "s2" > " end" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-487" > < a href = "#L-487" > < span class = "linenos" > 487< / span > < / a > < span class = "s2" > " escape" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-488" > < a href = "#L-488" > < span class = "linenos" > 488< / span > < / a > < span class = "s2" > " except" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-489" > < a href = "#L-489" > < span class = "linenos" > 489< / span > < / a > < span class = "s2" > " execute" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-490" > < a href = "#L-490" > < span class = "linenos" > 490< / span > < / a > < span class = "s2" > " exists" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-491" > < a href = "#L-491" > < span class = "linenos" > 491< / span > < / a > < span class = "s2" > " extract" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-492" > < a href = "#L-492" > < span class = "linenos" > 492< / span > < / a > < span class = "s2" > " false" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-493" > < a href = "#L-493" > < span class = "linenos" > 493< / span > < / a > < span class = "s2" > " for" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-494" > < a href = "#L-494" > < span class = "linenos" > 494< / span > < / a > < span class = "s2" > " from" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-495" > < a href = "#L-495" > < span class = "linenos" > 495< / span > < / a > < span class = "s2" > " full" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-496" > < a href = "#L-496" > < span class = "linenos" > 496< / span > < / a > < span class = "s2" > " group" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-497" > < a href = "#L-497" > < span class = "linenos" > 497< / span > < / a > < span class = "s2" > " having" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-498" > < a href = "#L-498" > < span class = "linenos" > 498< / span > < / a > < span class = "s2" > " in" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-499" > < a href = "#L-499" > < span class = "linenos" > 499< / span > < / a > < span class = "s2" > " inner" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-500" > < a href = "#L-500" > < span class = "linenos" > 500< / span > < / a > < span class = "s2" > " insert" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-501" > < a href = "#L-501" > < span class = "linenos" > 501< / span > < / a > < span class = "s2" > " intersect" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-502" > < a href = "#L-502" > < span class = "linenos" > 502< / span > < / a > < span class = "s2" > " into" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-503" > < a href = "#L-503" > < span class = "linenos" > 503< / span > < / a > < span class = "s2" > " is" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-504" > < a href = "#L-504" > < span class = "linenos" > 504< / span > < / a > < span class = "s2" > " join" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-505" > < a href = "#L-505" > < span class = "linenos" > 505< / span > < / a > < span class = "s2" > " left" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-506" > < a href = "#L-506" > < span class = "linenos" > 506< / span > < / a > < span class = "s2" > " like" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-507" > < a href = "#L-507" > < span class = "linenos" > 507< / span > < / a > < span class = "s2" > " natural" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-508" > < a href = "#L-508" > < span class = "linenos" > 508< / span > < / a > < span class = "s2" > " not" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-509" > < a href = "#L-509" > < span class = "linenos" > 509< / span > < / a > < span class = "s2" > " null" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-510" > < a href = "#L-510" > < span class = "linenos" > 510< / span > < / a > < span class = "s2" > " on" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-511" > < a href = "#L-511" > < span class = "linenos" > 511< / span > < / a > < span class = "s2" > " or" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-512" > < a href = "#L-512" > < span class = "linenos" > 512< / span > < / a > < span class = "s2" > " order" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-513" > < a href = "#L-513" > < span class = "linenos" > 513< / span > < / a > < span class = "s2" > " outer" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-514" > < a href = "#L-514" > < span class = "linenos" > 514< / span > < / a > < span class = "s2" > " prepare" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-515" > < a href = "#L-515" > < span class = "linenos" > 515< / span > < / a > < span class = "s2" > " right" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-516" > < a href = "#L-516" > < span class = "linenos" > 516< / span > < / a > < span class = "s2" > " select" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-517" > < a href = "#L-517" > < span class = "linenos" > 517< / span > < / a > < span class = "s2" > " table" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-518" > < a href = "#L-518" > < span class = "linenos" > 518< / span > < / a > < span class = "s2" > " then" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-519" > < a href = "#L-519" > < span class = "linenos" > 519< / span > < / a > < span class = "s2" > " true" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-520" > < a href = "#L-520" > < span class = "linenos" > 520< / span > < / a > < span class = "s2" > " union" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-521" > < a href = "#L-521" > < span class = "linenos" > 521< / span > < / a > < span class = "s2" > " using" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-522" > < a href = "#L-522" > < span class = "linenos" > 522< / span > < / a > < span class = "s2" > " values" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-523" > < a href = "#L-523" > < span class = "linenos" > 523< / span > < / a > < span class = "s2" > " when" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-524" > < a href = "#L-524" > < span class = "linenos" > 524< / span > < / a > < span class = "s2" > " where" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-525" > < a href = "#L-525" > < span class = "linenos" > 525< / span > < / a > < span class = "s2" > " with" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-526" > < a href = "#L-526" > < span class = "linenos" > 526< / span > < / a > < span class = "p" > }< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-527" > < a href = "#L-527" > < span class = "linenos" > 527< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-528" > < a href = "#L-528" > < span class = "linenos" > 528< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > md5_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-529" > < a href = "#L-529" > < span class = "linenos" > 529< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-530" > < a href = "#L-530" > < span class = "linenos" > 530< / span > < / a >
< / span > < span id = "L-531" > < a href = "#L-531" > < span class = "linenos" > 531< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "L-532" > < a href = "#L-532" > < span class = "linenos" > 532< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "L-533" > < a href = "#L-533" > < span class = "linenos" > 533< / span > < / a >
< / span > < span id = "L-534" > < a href = "#L-534" > < span class = "linenos" > 534< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "L-535" > < a href = "#L-535" > < span class = "linenos" > 535< / span > < / a >
< / span > < span id = "L-536" > < a href = "#L-536" > < span class = "linenos" > 536< / span > < / a > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "o" > *< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT_TYPES< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-537" > < a href = "#L-537" > < span class = "linenos" > 537< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-538" > < a href = "#L-538" > < span class = "linenos" > 538< / span > < / a >
< / span > < span id = "L-539" > < a href = "#L-539" > < span class = "linenos" > 539< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " LOWER" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_HEX" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " MD5" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))))< / span >
< / span > < span id = "L-540" > < a href = "#L-540" > < span class = "linenos" > 540< / span > < / a >
< / span > < span id = "L-541" > < a href = "#L-541" > < span class = "linenos" > 541< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtounix_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToUnix< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-542" > < a href = "#L-542" > < span class = "linenos" > 542< / span > < / a > < span class = "c1" > # Since `TO_UNIXTIME` requires a `TIMESTAMP`, we need to parse the argument into one.< / span >
< / span > < span id = "L-543" > < a href = "#L-543" > < span class = "linenos" > 543< / span > < / a > < span class = "c1" > # To do this, we first try to `DATE_PARSE` it, but since this can fail when there' s a< / span >
< / span > < span id = "L-544" > < a href = "#L-544" > < span class = "linenos" > 544< / span > < / a > < span class = "c1" > # timezone involved, we wrap it in a `TRY` call and use `PARSE_DATETIME` as a fallback,< / span >
< / span > < span id = "L-545" > < a href = "#L-545" > < span class = "linenos" > 545< / span > < / a > < span class = "c1" > # which seems to be using the same time mapping as Hive, as per:< / span >
< / span > < span id = "L-546" > < a href = "#L-546" > < span class = "linenos" > 546< / span > < / a > < span class = "c1" > # https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html< / span >
< / span > < span id = "L-547" > < a href = "#L-547" > < span class = "linenos" > 547< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-548" > < a href = "#L-548" > < span class = "linenos" > 548< / span > < / a > < span class = "n" > value_as_text< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > )< / span >
< / span > < span id = "L-549" > < a href = "#L-549" > < span class = "linenos" > 549< / span > < / a > < span class = "n" > value_as_timestamp< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "L-550" > < a href = "#L-550" > < span class = "linenos" > 550< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > )< / span > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "k" > else< / span > < span class = "n" > this< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-551" > < a href = "#L-551" > < span class = "linenos" > 551< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-552" > < a href = "#L-552" > < span class = "linenos" > 552< / span > < / a >
< / span > < span id = "L-553" > < a href = "#L-553" > < span class = "linenos" > 553< / span > < / a > < span class = "n" > parse_without_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_text< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-554" > < a href = "#L-554" > < span class = "linenos" > 554< / span > < / a >
< / span > < span id = "L-555" > < a href = "#L-555" > < span class = "linenos" > 555< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-556" > < a href = "#L-556" > < span class = "linenos" > 556< / span > < / a > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_timestamp< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-557" > < a href = "#L-557" > < span class = "linenos" > 557< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-558" > < a href = "#L-558" > < span class = "linenos" > 558< / span > < / a > < span class = "n" > parse_with_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-559" > < a href = "#L-559" > < span class = "linenos" > 559< / span > < / a > < span class = "s2" > " PARSE_DATETIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-560" > < a href = "#L-560" > < span class = "linenos" > 560< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-561" > < a href = "#L-561" > < span class = "linenos" > 561< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_MAPPING< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_TRIE< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-562" > < a href = "#L-562" > < span class = "linenos" > 562< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-563" > < a href = "#L-563" > < span class = "linenos" > 563< / span > < / a > < span class = "n" > coalesced< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " COALESCE" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TRY" < / span > < span class = "p" > ,< / span > < span class = "n" > parse_without_tz< / span > < span class = "p" > ),< / span > < span class = "n" > parse_with_tz< / span > < span class = "p" > )< / span >
< / span > < span id = "L-564" > < a href = "#L-564" > < span class = "linenos" > 564< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ,< / span > < span class = "n" > coalesced< / span > < span class = "p" > )< / span >
< / span > < span id = "L-565" > < a href = "#L-565" > < span class = "linenos" > 565< / span > < / a >
< / span > < span id = "L-566" > < a href = "#L-566" > < span class = "linenos" > 566< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Bracket< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-567" > < a href = "#L-567" > < span class = "linenos" > 567< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " safe" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-568" > < a href = "#L-568" > < span class = "linenos" > 568< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-569" > < a href = "#L-569" > < span class = "linenos" > 569< / span > < / a > < span class = "s2" > " ELEMENT_AT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-570" > < a href = "#L-570" > < span class = "linenos" > 570< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-571" > < a href = "#L-571" > < span class = "linenos" > 571< / span > < / a > < span class = "n" > seq_get< / span > < span class = "p" > (< / span >
< / span > < span id = "L-572" > < a href = "#L-572" > < span class = "linenos" > 572< / span > < / a > < span class = "n" > apply_index_offset< / span > < span class = "p" > (< / span >
< / span > < span id = "L-573" > < a href = "#L-573" > < span class = "linenos" > 573< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-574" > < a href = "#L-574" > < span class = "linenos" > 574< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-575" > < a href = "#L-575" > < span class = "linenos" > 575< / span > < / a > < span class = "mi" > 1< / span > < span class = "o" > -< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-576" > < a href = "#L-576" > < span class = "linenos" > 576< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-577" > < a href = "#L-577" > < span class = "linenos" > 577< / span > < / a > < span class = "mi" > 0< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-578" > < a href = "#L-578" > < span class = "linenos" > 578< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-579" > < a href = "#L-579" > < span class = "linenos" > 579< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-580" > < a href = "#L-580" > < span class = "linenos" > 580< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-581" > < a href = "#L-581" > < span class = "linenos" > 581< / span > < / a >
< / span > < span id = "L-582" > < a href = "#L-582" > < span class = "linenos" > 582< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > struct_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-583" > < a href = "#L-583" > < span class = "linenos" > 583< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "L-584" > < a href = "#L-584" > < span class = "linenos" > 584< / span > < / a >
< / span > < span id = "L-585" > < a href = "#L-585" > < span class = "linenos" > 585< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-586" > < a href = "#L-586" > < span class = "linenos" > 586< / span > < / a > < span class = "n" > values< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "L-587" > < a href = "#L-587" > < span class = "linenos" > 587< / span > < / a > < span class = "n" > schema< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "L-588" > < a href = "#L-588" > < span class = "linenos" > 588< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-589" > < a href = "#L-589" > < span class = "linenos" > 589< / span > < / a >
< / span > < span id = "L-590" > < a href = "#L-590" > < span class = "linenos" > 590< / span > < / a > < span class = "k" > for< / span > < span class = "n" > e< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "L-591" > < a href = "#L-591" > < span class = "linenos" > 591< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PropertyEQ< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-592" > < a href = "#L-592" > < span class = "linenos" > 592< / span > < / a > < span class = "k" > if< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "ow" > and< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > UNKNOWN< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-593" > < a href = "#L-593" > < span class = "linenos" > 593< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-594" > < a href = "#L-594" > < span class = "linenos" > 594< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "L-595" > < a href = "#L-595" > < span class = "linenos" > 595< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "L-596" > < a href = "#L-596" > < span class = "linenos" > 596< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-597" > < a href = "#L-597" > < span class = "linenos" > 597< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "L-598" > < a href = "#L-598" > < span class = "linenos" > 598< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-599" > < a href = "#L-599" > < span class = "linenos" > 599< / span > < / a >
< / span > < span id = "L-600" > < a href = "#L-600" > < span class = "linenos" > 600< / span > < / a > < span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > )< / span >
< / span > < span id = "L-601" > < a href = "#L-601" > < span class = "linenos" > 601< / span > < / a >
< / span > < span id = "L-602" > < a href = "#L-602" > < span class = "linenos" > 602< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > size< / span > < span class = "ow" > or< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "o" > !=< / span > < span class = "n" > size< / span > < span class = "p" > :< / span >
< / span > < span id = "L-603" > < a href = "#L-603" > < span class = "linenos" > 603< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unknown_type< / span > < span class = "p" > :< / span >
< / span > < span id = "L-604" > < a href = "#L-604" > < span class = "linenos" > 604< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "L-605" > < a href = "#L-605" > < span class = "linenos" > 605< / span > < / a > < span class = "s2" > " Cannot convert untyped key-value definitions (try annotate_types)." < / span >
< / span > < span id = "L-606" > < a href = "#L-606" > < span class = "linenos" > 606< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-607" > < a href = "#L-607" > < span class = "linenos" > 607< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ROW" < / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > values< / span > < span class = "p" > )< / span >
< / span > < span id = "L-608" > < a href = "#L-608" > < span class = "linenos" > 608< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > values< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
< / span > < span id = "L-609" > < a href = "#L-609" > < span class = "linenos" > 609< / span > < / a >
< / span > < span id = "L-610" > < a href = "#L-610" > < span class = "linenos" > 610< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > interval_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-611" > < a href = "#L-611" > < span class = "linenos" > 611< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "ow" > and< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > text< / span > < span class = "p" > (< / span > < span class = "s2" > " unit" < / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " WEEK" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-612" > < a href = "#L-612" > < span class = "linenos" > 612< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "si" > }< / span > < span class = "s2" > * INTERVAL ' 7' DAY)" < / span >
< / span > < span id = "L-613" > < a href = "#L-613" > < span class = "linenos" > 613< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > interval_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-614" > < a href = "#L-614" > < span class = "linenos" > 614< / span > < / a >
< / span > < span id = "L-615" > < a href = "#L-615" > < span class = "linenos" > 615< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > transaction_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Transaction< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-616" > < a href = "#L-616" > < span class = "linenos" > 616< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " modes" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-617" > < a href = "#L-617" > < span class = "linenos" > 617< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > modes< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "k" > if< / span > < span class = "n" > modes< / span > < span class = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "L-618" > < a href = "#L-618" > < span class = "linenos" > 618< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " START TRANSACTION< / span > < span class = "si" > {< / span > < span class = "n" > modes< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "L-619" > < a href = "#L-619" > < span class = "linenos" > 619< / span > < / a >
< / span > < span id = "L-620" > < a href = "#L-620" > < span class = "linenos" > 620< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > offset_limit_modifiers< / span > < span class = "p" > (< / span >
< / span > < span id = "L-621" > < a href = "#L-621" > < span class = "linenos" > 621< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > ,< / span > < span class = "n" > fetch< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "p" > ,< / span > < span class = "n" > limit< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Fetch< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Limit< / span > < span class = "p" > ]< / span >
< / span > < span id = "L-622" > < a href = "#L-622" > < span class = "linenos" > 622< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-623" > < a href = "#L-623" > < span class = "linenos" > 623< / span > < / a > < span class = "k" > return< / span > < span class = "p" > [< / span >
< / span > < span id = "L-624" > < a href = "#L-624" > < span class = "linenos" > 624< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-625" > < a href = "#L-625" > < span class = "linenos" > 625< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > limit< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-626" > < a href = "#L-626" > < span class = "linenos" > 626< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "L-627" > < a href = "#L-627" > < span class = "linenos" > 627< / span > < / a >
< / span > < span id = "L-628" > < a href = "#L-628" > < span class = "linenos" > 628< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > create_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Create< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-629" > < a href = "#L-629" > < span class = "linenos" > 629< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "L-630" > < a href = "#L-630" > < span class = "linenos" > 630< / span > < / a > < span class = "sd" > Presto doesn' t support CREATE VIEW with expressions (ex: `CREATE VIEW x (cola)` then `(cola)` is the expression),< / span >
< / span > < span id = "L-631" > < a href = "#L-631" > < span class = "linenos" > 631< / span > < / a > < span class = "sd" > so we need to remove them< / span >
< / span > < span id = "L-632" > < a href = "#L-632" > < span class = "linenos" > 632< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "L-633" > < a href = "#L-633" > < span class = "linenos" > 633< / span > < / a > < span class = "n" > kind< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " kind" < / span > < span class = "p" > ]< / span >
< / span > < span id = "L-634" > < a href = "#L-634" > < span class = "linenos" > 634< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-635" > < a href = "#L-635" > < span class = "linenos" > 635< / span > < / a > < span class = "k" > if< / span > < span class = "n" > kind< / span > < span class = "o" > ==< / span > < span class = "s2" > " VIEW" < / span > < span class = "ow" > and< / span > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "L-636" > < a href = "#L-636" > < span class = "linenos" > 636< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expressions" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "L-637" > < a href = "#L-637" > < span class = "linenos" > 637< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > create_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-638" > < a href = "#L-638" > < span class = "linenos" > 638< / span > < / a >
< / span > < span id = "L-639" > < a href = "#L-639" > < span class = "linenos" > 639< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > delete_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-640" > < a href = "#L-640" > < span class = "linenos" > 640< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "L-641" > < a href = "#L-641" > < span class = "linenos" > 641< / span > < / a > < span class = "sd" > Presto only supports DELETE FROM for a single table without an alias, so we need< / span >
< / span > < span id = "L-642" > < a href = "#L-642" > < span class = "linenos" > 642< / span > < / a > < span class = "sd" > to remove the unnecessary parts. If the original DELETE statement contains more< / span >
< / span > < span id = "L-643" > < a href = "#L-643" > < span class = "linenos" > 643< / span > < / a > < span class = "sd" > than one table to be deleted, we can' t safely map it 1-1 to a Presto statement.< / span >
< / span > < span id = "L-644" > < a href = "#L-644" > < span class = "linenos" > 644< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "L-645" > < a href = "#L-645" > < span class = "linenos" > 645< / span > < / a > < span class = "n" > tables< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "p" > [< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ]< / span >
< / span > < span id = "L-646" > < a href = "#L-646" > < span class = "linenos" > 646< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > tables< / span > < span class = "p" > )< / span > < span class = "o" > > < / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "L-647" > < a href = "#L-647" > < span class = "linenos" > 647< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-648" > < a href = "#L-648" > < span class = "linenos" > 648< / span > < / a >
< / span > < span id = "L-649" > < a href = "#L-649" > < span class = "linenos" > 649< / span > < / a > < span class = "n" > table< / span > < span class = "o" > =< / span > < span class = "n" > tables< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span >
< / span > < span id = "L-650" > < a href = "#L-650" > < span class = "linenos" > 650< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " this" < / span > < span class = "p" > ,< / span > < span class = "n" > table< / span > < span class = "p" > )< / span >
< / span > < span id = "L-651" > < a href = "#L-651" > < span class = "linenos" > 651< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-652" > < a href = "#L-652" > < span class = "linenos" > 652< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "L-653" > < a href = "#L-653" > < span class = "linenos" > 653< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > table< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Table< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-654" > < a href = "#L-654" > < span class = "linenos" > 654< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > =< / span > < span class = "n" > table< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-655" > < a href = "#L-655" > < span class = "linenos" > 655< / span > < / a > < span class = "k" > if< / span > < span class = "n" > table_alias< / span > < span class = "p" > :< / span >
< / span > < span id = "L-656" > < a href = "#L-656" > < span class = "linenos" > 656< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / span >
< / span > < span id = "L-657" > < a href = "#L-657" > < span class = "linenos" > 657< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > transform< / span > < span class = "p" > (< / span > < span class = "n" > unqualify_columns< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-658" > < a href = "#L-658" > < span class = "linenos" > 658< / span > < / a >
< / span > < span id = "L-659" > < a href = "#L-659" > < span class = "linenos" > 659< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-660" > < a href = "#L-660" > < span class = "linenos" > 660< / span > < / a >
< / span > < span id = "L-661" > < a href = "#L-661" > < span class = "linenos" > 661< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > jsonextract_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-662" > < a href = "#L-662" > < span class = "linenos" > 662< / span > < / a > < span class = "n" > is_json_extract< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > settings< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract_is_json_extract" < / span > < span class = "p" > ,< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span >
< / span > < span id = "L-663" > < a href = "#L-663" > < span class = "linenos" > 663< / span > < / a >
< / span > < span id = "L-664" > < a href = "#L-664" > < span class = "linenos" > 664< / span > < / a > < span class = "c1" > # Generate JSON_EXTRACT unless the user has configured that a Snowflake / Databricks< / span >
< / span > < span id = "L-665" > < a href = "#L-665" > < span class = "linenos" > 665< / span > < / a > < span class = "c1" > # VARIANT extract (e.g. col:x.y) should map to dot notation (i.e ROW access) in Presto/Trino< / span >
< / span > < span id = "L-666" > < a href = "#L-666" > < span class = "linenos" > 666< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > is_json_extract< / span > < span class = "p" > :< / span >
< / span > < span id = "L-667" > < a href = "#L-667" > < span class = "linenos" > 667< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-668" > < a href = "#L-668" > < span class = "linenos" > 668< / span > < / a > < span class = "s2" > " JSON_EXTRACT" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span >
< / span > < span id = "L-669" > < a href = "#L-669" > < span class = "linenos" > 669< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-670" > < a href = "#L-670" > < span class = "linenos" > 670< / span > < / a >
< / span > < span id = "L-671" > < a href = "#L-671" > < span class = "linenos" > 671< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-672" > < a href = "#L-672" > < span class = "linenos" > 672< / span > < / a >
< / span > < span id = "L-673" > < a href = "#L-673" > < span class = "linenos" > 673< / span > < / a > < span class = "c1" > # Convert the JSONPath extraction `JSON_EXTRACT(col, ' $.x.y) to a ROW access col.x.y< / span >
< / span > < span id = "L-674" > < a href = "#L-674" > < span class = "linenos" > 674< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "L-675" > < a href = "#L-675" > < span class = "linenos" > 675< / span > < / a > < span class = "k" > for< / span > < span class = "n" > path_key< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > :]:< / span >
< / span > < span id = "L-676" > < a href = "#L-676" > < span class = "linenos" > 676< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > path_key< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathKey< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-677" > < a href = "#L-677" > < span class = "linenos" > 677< / span > < / a > < span class = "c1" > # Cannot transpile subscripts, wildcards etc to dot notation< / span >
< / span > < span id = "L-678" > < a href = "#L-678" > < span class = "linenos" > 678< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "L-679" > < a href = "#L-679" > < span class = "linenos" > 679< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Cannot transpile JSONPath segment ' < / span > < span class = "si" > {< / span > < span class = "n" > path_key< / span > < span class = "si" > }< / span > < span class = "s2" > ' to ROW access" < / span >
< / span > < span id = "L-680" > < a href = "#L-680" > < span class = "linenos" > 680< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-681" > < a href = "#L-681" > < span class = "linenos" > 681< / span > < / a > < span class = "k" > continue< / span >
< / span > < span id = "L-682" > < a href = "#L-682" > < span class = "linenos" > 682< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "n" > path_key< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-683" > < a href = "#L-683" > < span class = "linenos" > 683< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SAFE_IDENTIFIER_RE< / span > < span class = "o" > .< / span > < span class = "n" > match< / span > < span class = "p" > (< / span > < span class = "n" > key< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-684" > < a href = "#L-684" > < span class = "linenos" > 684< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s1" > ' " < / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s1" > " ' < / span >
< / span > < span id = "L-685" > < a href = "#L-685" > < span class = "linenos" > 685< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " .< / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "L-686" > < a href = "#L-686" > < span class = "linenos" > 686< / span > < / a >
< / span > < span id = "L-687" > < a href = "#L-687" > < span class = "linenos" > 687< / span > < / a > < span class = "n" > expr< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > segments< / span > < span class = "p" > )< / span >
< / span > < span id = "L-688" > < a href = "#L-688" > < span class = "linenos" > 688< / span > < / a >
< / span > < span id = "L-689" > < a href = "#L-689" > < span class = "linenos" > 689< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }{< / span > < span class = "n" > expr< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "L-690" > < a href = "#L-690" > < span class = "linenos" > 690< / span > < / a >
< / span > < span id = "L-691" > < a href = "#L-691" > < span class = "linenos" > 691< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > groupconcat_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GroupConcat< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-692" > < a href = "#L-692" > < span class = "linenos" > 692< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "L-693" > < a href = "#L-693" > < span class = "linenos" > 693< / span > < / a > < span class = "s2" > " ARRAY_JOIN" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-694" > < a href = "#L-694" > < span class = "linenos" > 694< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_AGG" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-695" > < a href = "#L-695" > < span class = "linenos" > 695< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " separator" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-696" > < a href = "#L-696" > < span class = "linenos" > 696< / span > < / a > < span class = "p" > )< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
< / section >
2025-02-13 21:43:00 +01:00
< section id = "DATE_ADD_OR_SUB" >
< div class = "attr variable" >
< span class = "name" > DATE_ADD_OR_SUB< / span > =
< input id = "DATE_ADD_OR_SUB-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "DATE_ADD_OR_SUB-view-value" > < / label > < span class = "default_value" > typing.Union[< a href = "../expressions.html#DateAdd" > sqlglot.expressions.DateAdd< / a > , < a href = "../expressions.html#TimestampAdd" > sqlglot.expressions.TimestampAdd< / a > , < a href = "../expressions.html#DateSub" > sqlglot.expressions.DateSub< / a > ]< / span >
< / div >
< a class = "headerlink" href = "#DATE_ADD_OR_SUB" > < / a >
< / section >
2025-02-13 15:23:26 +01:00
< section id = "Presto" >
< input id = "Presto-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr class" >
< span class = "def" > class< / span >
< span class = "name" > Presto< / span > < wbr > (< span class = "base" > < a href = "dialect.html#Dialect" > sqlglot.dialects.dialect.Dialect< / a > < / span > ):
< label class = "view-source-button" for = "Presto-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto-193" > < a href = "#Presto-193" > < span class = "linenos" > 193< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Presto< / span > < span class = "p" > (< / span > < span class = "n" > Dialect< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-194" > < a href = "#Presto-194" > < span class = "linenos" > 194< / span > < / a > < span class = "n" > INDEX_OFFSET< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span >
< / span > < span id = "Presto-195" > < a href = "#Presto-195" > < span class = "linenos" > 195< / span > < / a > < span class = "n" > NULL_ORDERING< / span > < span class = "o" > =< / span > < span class = "s2" > " nulls_are_last" < / span >
< / span > < span id = "Presto-196" > < a href = "#Presto-196" > < span class = "linenos" > 196< / span > < / a > < span class = "n" > TIME_FORMAT< / span > < span class = "o" > =< / span > < span class = "n" > MySQL< / span > < span class = "o" > .< / span > < span class = "n" > TIME_FORMAT< / span >
< / span > < span id = "Presto-197" > < a href = "#Presto-197" > < span class = "linenos" > 197< / span > < / a > < span class = "n" > STRICT_STRING_CONCAT< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-198" > < a href = "#Presto-198" > < span class = "linenos" > 198< / span > < / a > < span class = "n" > SUPPORTS_SEMI_ANTI_JOIN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-199" > < a href = "#Presto-199" > < span class = "linenos" > 199< / span > < / a > < span class = "n" > TYPED_DIVISION< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-200" > < a href = "#Presto-200" > < span class = "linenos" > 200< / span > < / a > < span class = "n" > TABLESAMPLE_SIZE_IS_PERCENT< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-201" > < a href = "#Presto-201" > < span class = "linenos" > 201< / span > < / a > < span class = "n" > LOG_BASE_FIRST< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "nb" > bool< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "Presto-202" > < a href = "#Presto-202" > < span class = "linenos" > 202< / span > < / a >
< / span > < span id = "Presto-203" > < a href = "#Presto-203" > < span class = "linenos" > 203< / span > < / a > < span class = "n" > TIME_MAPPING< / span > < span class = "o" > =< / span > < span class = "n" > MySQL< / span > < span class = "o" > .< / span > < span class = "n" > TIME_MAPPING< / span >
< / span > < span id = "Presto-204" > < a href = "#Presto-204" > < span class = "linenos" > 204< / span > < / a >
< / span > < span id = "Presto-205" > < a href = "#Presto-205" > < span class = "linenos" > 205< / span > < / a > < span class = "c1" > # https://github.com/trinodb/trino/issues/17< / span >
< / span > < span id = "Presto-206" > < a href = "#Presto-206" > < span class = "linenos" > 206< / span > < / a > < span class = "c1" > # https://github.com/trinodb/trino/issues/12289< / span >
< / span > < span id = "Presto-207" > < a href = "#Presto-207" > < span class = "linenos" > 207< / span > < / a > < span class = "c1" > # https://github.com/prestodb/presto/issues/2863< / span >
< / span > < span id = "Presto-208" > < a href = "#Presto-208" > < span class = "linenos" > 208< / span > < / a > < span class = "n" > NORMALIZATION_STRATEGY< / span > < span class = "o" > =< / span > < span class = "n" > NormalizationStrategy< / span > < span class = "o" > .< / span > < span class = "n" > CASE_INSENSITIVE< / span >
< / span > < span id = "Presto-209" > < a href = "#Presto-209" > < span class = "linenos" > 209< / span > < / a >
< / span > < span id = "Presto-210" > < a href = "#Presto-210" > < span class = "linenos" > 210< / span > < / a > < span class = "c1" > # The result of certain math functions in Presto/Trino is of type< / span >
< / span > < span id = "Presto-211" > < a href = "#Presto-211" > < span class = "linenos" > 211< / span > < / a > < span class = "c1" > # equal to the input type e.g: FLOOR(5.5/2) -> DECIMAL, FLOOR(5/2) -> BIGINT< / span >
< / span > < span id = "Presto-212" > < a href = "#Presto-212" > < span class = "linenos" > 212< / span > < / a > < span class = "n" > ANNOTATORS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto-213" > < a href = "#Presto-213" > < span class = "linenos" > 213< / span > < / a > < span class = "o" > **< / span > < span class = "n" > Dialect< / span > < span class = "o" > .< / span > < span class = "n" > ANNOTATORS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-214" > < a href = "#Presto-214" > < span class = "linenos" > 214< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Floor< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-215" > < a href = "#Presto-215" > < span class = "linenos" > 215< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Ceil< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-216" > < a href = "#Presto-216" > < span class = "linenos" > 216< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Mod< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ,< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-217" > < a href = "#Presto-217" > < span class = "linenos" > 217< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Round< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-218" > < a href = "#Presto-218" > < span class = "linenos" > 218< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Sign< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-219" > < a href = "#Presto-219" > < span class = "linenos" > 219< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Abs< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-220" > < a href = "#Presto-220" > < span class = "linenos" > 220< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Rand< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _annotate_by_args< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-221" > < a href = "#Presto-221" > < span class = "linenos" > 221< / span > < / a > < span class = "k" > if< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto-222" > < a href = "#Presto-222" > < span class = "linenos" > 222< / span > < / a > < span class = "k" > else< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _set_type< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DOUBLE< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-223" > < a href = "#Presto-223" > < span class = "linenos" > 223< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto-224" > < a href = "#Presto-224" > < span class = "linenos" > 224< / span > < / a >
< / span > < span id = "Presto-225" > < a href = "#Presto-225" > < span class = "linenos" > 225< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Tokenizer< / span > < span class = "p" > (< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-226" > < a href = "#Presto-226" > < span class = "linenos" > 226< / span > < / a > < span class = "n" > UNICODE_STRINGS< / span > < span class = "o" > =< / span > < span class = "p" > [< / span >
< / span > < span id = "Presto-227" > < a href = "#Presto-227" > < span class = "linenos" > 227< / span > < / a > < span class = "p" > (< / span > < span class = "n" > prefix< / span > < span class = "o" > +< / span > < span class = "n" > q< / span > < span class = "p" > ,< / span > < span class = "n" > q< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-228" > < a href = "#Presto-228" > < span class = "linenos" > 228< / span > < / a > < span class = "k" > for< / span > < span class = "n" > q< / span > < span class = "ow" > in< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ],< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "o" > .< / span > < span class = "n" > QUOTES< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-229" > < a href = "#Presto-229" > < span class = "linenos" > 229< / span > < / a > < span class = "k" > for< / span > < span class = "n" > prefix< / span > < span class = "ow" > in< / span > < span class = "p" > (< / span > < span class = "s2" > " U& " < / span > < span class = "p" > ,< / span > < span class = "s2" > " u& " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-230" > < a href = "#Presto-230" > < span class = "linenos" > 230< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "Presto-231" > < a href = "#Presto-231" > < span class = "linenos" > 231< / span > < / a >
< / span > < span id = "Presto-232" > < a href = "#Presto-232" > < span class = "linenos" > 232< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto-233" > < a href = "#Presto-233" > < span class = "linenos" > 233< / span > < / a > < span class = "o" > **< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "o" > .< / span > < span class = "n" > KEYWORDS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-234" > < a href = "#Presto-234" > < span class = "linenos" > 234< / span > < / a > < span class = "s2" > " START" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BEGIN< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-235" > < a href = "#Presto-235" > < span class = "linenos" > 235< / span > < / a > < span class = "s2" > " MATCH_RECOGNIZE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > MATCH_RECOGNIZE< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-236" > < a href = "#Presto-236" > < span class = "linenos" > 236< / span > < / a > < span class = "s2" > " ROW" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > STRUCT< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-237" > < a href = "#Presto-237" > < span class = "linenos" > 237< / span > < / a > < span class = "s2" > " IPADDRESS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > IPADDRESS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-238" > < a href = "#Presto-238" > < span class = "linenos" > 238< / span > < / a > < span class = "s2" > " IPPREFIX" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > IPPREFIX< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-239" > < a href = "#Presto-239" > < span class = "linenos" > 239< / span > < / a > < span class = "s2" > " TDIGEST" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TDIGEST< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-240" > < a href = "#Presto-240" > < span class = "linenos" > 240< / span > < / a > < span class = "s2" > " HYPERLOGLOG" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > HLLSKETCH< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-241" > < a href = "#Presto-241" > < span class = "linenos" > 241< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto-242" > < a href = "#Presto-242" > < span class = "linenos" > 242< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " /*+" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-243" > < a href = "#Presto-243" > < span class = "linenos" > 243< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " QUALIFY" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-244" > < a href = "#Presto-244" > < span class = "linenos" > 244< / span > < / a >
< / span > < span id = "Presto-245" > < a href = "#Presto-245" > < span class = "linenos" > 245< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Parser< / span > < span class = "p" > (< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-246" > < a href = "#Presto-246" > < span class = "linenos" > 246< / span > < / a > < span class = "n" > VALUES_FOLLOWED_BY_PAREN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-247" > < a href = "#Presto-247" > < span class = "linenos" > 247< / span > < / a >
< / span > < span id = "Presto-248" > < a href = "#Presto-248" > < span class = "linenos" > 248< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto-249" > < a href = "#Presto-249" > < span class = "linenos" > 249< / span > < / a > < span class = "o" > **< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "o" > .< / span > < span class = "n" > FUNCTIONS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-250" > < a href = "#Presto-250" > < span class = "linenos" > 250< / span > < / a > < span class = "s2" > " ARBITRARY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AnyValue< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-251" > < a href = "#Presto-251" > < span class = "linenos" > 251< / span > < / a > < span class = "s2" > " APPROX_DISTINCT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxDistinct< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-252" > < a href = "#Presto-252" > < span class = "linenos" > 252< / span > < / a > < span class = "s2" > " APPROX_PERCENTILE" < / span > < span class = "p" > :< / span > < span class = "n" > _build_approx_percentile< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-253" > < a href = "#Presto-253" > < span class = "linenos" > 253< / span > < / a > < span class = "s2" > " BITWISE_AND" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseAnd< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-254" > < a href = "#Presto-254" > < span class = "linenos" > 254< / span > < / a > < span class = "s2" > " BITWISE_NOT" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseNot< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto-255" > < a href = "#Presto-255" > < span class = "linenos" > 255< / span > < / a > < span class = "s2" > " BITWISE_OR" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseOr< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-256" > < a href = "#Presto-256" > < span class = "linenos" > 256< / span > < / a > < span class = "s2" > " BITWISE_XOR" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-257" > < a href = "#Presto-257" > < span class = "linenos" > 257< / span > < / a > < span class = "s2" > " CARDINALITY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySize< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-258" > < a href = "#Presto-258" > < span class = "linenos" > 258< / span > < / a > < span class = "s2" > " CONTAINS" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayContains< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-259" > < a href = "#Presto-259" > < span class = "linenos" > 259< / span > < / a > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateAdd< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-260" > < a href = "#Presto-260" > < span class = "linenos" > 260< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-261" > < a href = "#Presto-261" > < span class = "linenos" > 261< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-262" > < a href = "#Presto-262" > < span class = "linenos" > 262< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-263" > < a href = "#Presto-263" > < span class = "linenos" > 263< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-264" > < a href = "#Presto-264" > < span class = "linenos" > 264< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-265" > < a href = "#Presto-265" > < span class = "linenos" > 265< / span > < / a > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > :< / span > < span class = "n" > build_formatted_time< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > ,< / span > < span class = "s2" > " presto" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-266" > < a href = "#Presto-266" > < span class = "linenos" > 266< / span > < / a > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > :< / span > < span class = "n" > build_formatted_time< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToTime< / span > < span class = "p" > ,< / span > < span class = "s2" > " presto" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-267" > < a href = "#Presto-267" > < span class = "linenos" > 267< / span > < / a > < span class = "s2" > " DATE_TRUNC" < / span > < span class = "p" > :< / span > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-268" > < a href = "#Presto-268" > < span class = "linenos" > 268< / span > < / a > < span class = "s2" > " DAY_OF_WEEK" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeekIso< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-269" > < a href = "#Presto-269" > < span class = "linenos" > 269< / span > < / a > < span class = "s2" > " ELEMENT_AT" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Bracket< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-270" > < a href = "#Presto-270" > < span class = "linenos" > 270< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > )],< / span > < span class = "n" > offset< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > safe< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-271" > < a href = "#Presto-271" > < span class = "linenos" > 271< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-272" > < a href = "#Presto-272" > < span class = "linenos" > 272< / span > < / a > < span class = "s2" > " FROM_HEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Unhex< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-273" > < a href = "#Presto-273" > < span class = "linenos" > 273< / span > < / a > < span class = "s2" > " FROM_UNIXTIME" < / span > < span class = "p" > :< / span > < span class = "n" > _build_from_unixtime< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-274" > < a href = "#Presto-274" > < span class = "linenos" > 274< / span > < / a > < span class = "s2" > " FROM_UTF8" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Decode< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-275" > < a href = "#Presto-275" > < span class = "linenos" > 275< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-276" > < a href = "#Presto-276" > < span class = "linenos" > 276< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-277" > < a href = "#Presto-277" > < span class = "linenos" > 277< / span > < / a > < span class = "s2" > " LEVENSHTEIN_DISTANCE" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Levenshtein< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-278" > < a href = "#Presto-278" > < span class = "linenos" > 278< / span > < / a > < span class = "s2" > " NOW" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTimestamp< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-279" > < a href = "#Presto-279" > < span class = "linenos" > 279< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtract< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-280" > < a href = "#Presto-280" > < span class = "linenos" > 280< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT_ALL" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtractAll< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-281" > < a href = "#Presto-281" > < span class = "linenos" > 281< / span > < / a > < span class = "s2" > " REGEXP_REPLACE" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpReplace< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-282" > < a href = "#Presto-282" > < span class = "linenos" > 282< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-283" > < a href = "#Presto-283" > < span class = "linenos" > 283< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-284" > < a href = "#Presto-284" > < span class = "linenos" > 284< / span > < / a > < span class = "n" > replacement< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " " < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-285" > < a href = "#Presto-285" > < span class = "linenos" > 285< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-286" > < a href = "#Presto-286" > < span class = "linenos" > 286< / span > < / a > < span class = "s2" > " ROW" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-287" > < a href = "#Presto-287" > < span class = "linenos" > 287< / span > < / a > < span class = "s2" > " SEQUENCE" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-288" > < a href = "#Presto-288" > < span class = "linenos" > 288< / span > < / a > < span class = "s2" > " SET_AGG" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayUniqueAgg< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-289" > < a href = "#Presto-289" > < span class = "linenos" > 289< / span > < / a > < span class = "s2" > " SPLIT_TO_MAP" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToMap< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-290" > < a href = "#Presto-290" > < span class = "linenos" > 290< / span > < / a > < span class = "s2" > " STRPOS" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-291" > < a href = "#Presto-291" > < span class = "linenos" > 291< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > substr< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > instance< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-292" > < a href = "#Presto-292" > < span class = "linenos" > 292< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-293" > < a href = "#Presto-293" > < span class = "linenos" > 293< / span > < / a > < span class = "s2" > " TO_CHAR" < / span > < span class = "p" > :< / span > < span class = "n" > _build_to_char< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-294" > < a href = "#Presto-294" > < span class = "linenos" > 294< / span > < / a > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToUnix< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-295" > < a href = "#Presto-295" > < span class = "linenos" > 295< / span > < / a > < span class = "s2" > " TO_UTF8" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-296" > < a href = "#Presto-296" > < span class = "linenos" > 296< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-297" > < a href = "#Presto-297" > < span class = "linenos" > 297< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-298" > < a href = "#Presto-298" > < span class = "linenos" > 298< / span > < / a > < span class = "s2" > " MD5" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-299" > < a href = "#Presto-299" > < span class = "linenos" > 299< / span > < / a > < span class = "s2" > " SHA256" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > length< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > number< / span > < span class = "p" > (< / span > < span class = "mi" > 256< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto-300" > < a href = "#Presto-300" > < span class = "linenos" > 300< / span > < / a > < span class = "s2" > " SHA512" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > length< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > number< / span > < span class = "p" > (< / span > < span class = "mi" > 512< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto-301" > < a href = "#Presto-301" > < span class = "linenos" > 301< / span > < / a > < span class = "p" > }< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "Presto-302" > < a href = "#Presto-302" > < span class = "linenos" > 302< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto-303" > < a href = "#Presto-303" > < span class = "linenos" > 303< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > =< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "o" > .< / span > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > copy< / span > < span class = "p" > ()< / span >
< / span > < span id = "Presto-304" > < a href = "#Presto-304" > < span class = "linenos" > 304< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " TRIM" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-305" > < a href = "#Presto-305" > < span class = "linenos" > 305< / span > < / a >
< / span > < span id = "Presto-306" > < a href = "#Presto-306" > < span class = "linenos" > 306< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Generator< / span > < span class = "p" > (< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-307" > < a href = "#Presto-307" > < span class = "linenos" > 307< / span > < / a > < span class = "n" > INTERVAL_ALLOWS_PLURAL_FORM< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-308" > < a href = "#Presto-308" > < span class = "linenos" > 308< / span > < / a > < span class = "n" > JOIN_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-309" > < a href = "#Presto-309" > < span class = "linenos" > 309< / span > < / a > < span class = "n" > TABLE_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-310" > < a href = "#Presto-310" > < span class = "linenos" > 310< / span > < / a > < span class = "n" > QUERY_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-311" > < a href = "#Presto-311" > < span class = "linenos" > 311< / span > < / a > < span class = "n" > IS_BOOL_ALLOWED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-312" > < a href = "#Presto-312" > < span class = "linenos" > 312< / span > < / a > < span class = "n" > TZ_TO_WITH_TIME_ZONE< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-313" > < a href = "#Presto-313" > < span class = "linenos" > 313< / span > < / a > < span class = "n" > NVL2_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-314" > < a href = "#Presto-314" > < span class = "linenos" > 314< / span > < / a > < span class = "n" > STRUCT_DELIMITER< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "s2" > " (" < / span > < span class = "p" > ,< / span > < span class = "s2" > " )" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-315" > < a href = "#Presto-315" > < span class = "linenos" > 315< / span > < / a > < span class = "n" > LIMIT_ONLY_LITERALS< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-316" > < a href = "#Presto-316" > < span class = "linenos" > 316< / span > < / a > < span class = "n" > SUPPORTS_SINGLE_ARG_CONCAT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-317" > < a href = "#Presto-317" > < span class = "linenos" > 317< / span > < / a > < span class = "n" > LIKE_PROPERTY_INSIDE_SCHEMA< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-318" > < a href = "#Presto-318" > < span class = "linenos" > 318< / span > < / a > < span class = "n" > MULTI_ARG_DISTINCT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-319" > < a href = "#Presto-319" > < span class = "linenos" > 319< / span > < / a > < span class = "n" > SUPPORTS_TO_NUMBER< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-320" > < a href = "#Presto-320" > < span class = "linenos" > 320< / span > < / a > < span class = "n" > HEX_FUNC< / span > < span class = "o" > =< / span > < span class = "s2" > " TO_HEX" < / span >
< / span > < span id = "Presto-321" > < a href = "#Presto-321" > < span class = "linenos" > 321< / span > < / a > < span class = "n" > PARSE_JSON_NAME< / span > < span class = "o" > =< / span > < span class = "s2" > " JSON_PARSE" < / span >
< / span > < span id = "Presto-322" > < a href = "#Presto-322" > < span class = "linenos" > 322< / span > < / a > < span class = "n" > PAD_FILL_PATTERN_IS_REQUIRED< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-323" > < a href = "#Presto-323" > < span class = "linenos" > 323< / span > < / a > < span class = "n" > EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-324" > < a href = "#Presto-324" > < span class = "linenos" > 324< / span > < / a > < span class = "n" > SUPPORTS_MEDIAN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-325" > < a href = "#Presto-325" > < span class = "linenos" > 325< / span > < / a > < span class = "n" > ARRAY_SIZE_NAME< / span > < span class = "o" > =< / span > < span class = "s2" > " CARDINALITY" < / span >
< / span > < span id = "Presto-326" > < a href = "#Presto-326" > < span class = "linenos" > 326< / span > < / a >
< / span > < span id = "Presto-327" > < a href = "#Presto-327" > < span class = "linenos" > 327< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto-328" > < a href = "#Presto-328" > < span class = "linenos" > 328< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-329" > < a href = "#Presto-329" > < span class = "linenos" > 329< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LocationProperty< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Properties< / span > < span class = "o" > .< / span > < span class = "n" > Location< / span > < span class = "o" > .< / span > < span class = "n" > UNSUPPORTED< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-330" > < a href = "#Presto-330" > < span class = "linenos" > 330< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > VolatileProperty< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Properties< / span > < span class = "o" > .< / span > < span class = "n" > Location< / span > < span class = "o" > .< / span > < span class = "n" > UNSUPPORTED< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-331" > < a href = "#Presto-331" > < span class = "linenos" > 331< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto-332" > < a href = "#Presto-332" > < span class = "linenos" > 332< / span > < / a >
< / span > < span id = "Presto-333" > < a href = "#Presto-333" > < span class = "linenos" > 333< / span > < / a > < span class = "n" > TYPE_MAPPING< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto-334" > < a href = "#Presto-334" > < span class = "linenos" > 334< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > TYPE_MAPPING< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-335" > < a href = "#Presto-335" > < span class = "linenos" > 335< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > BINARY< / span > < span class = "p" > :< / span > < span class = "s2" > " VARBINARY" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-336" > < a href = "#Presto-336" > < span class = "linenos" > 336< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > BIT< / span > < span class = "p" > :< / span > < span class = "s2" > " BOOLEAN" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-337" > < a href = "#Presto-337" > < span class = "linenos" > 337< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATETIME< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-338" > < a href = "#Presto-338" > < span class = "linenos" > 338< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATETIME64< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-339" > < a href = "#Presto-339" > < span class = "linenos" > 339< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > FLOAT< / span > < span class = "p" > :< / span > < span class = "s2" > " REAL" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-340" > < a href = "#Presto-340" > < span class = "linenos" > 340< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > HLLSKETCH< / span > < span class = "p" > :< / span > < span class = "s2" > " HYPERLOGLOG" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-341" > < a href = "#Presto-341" > < span class = "linenos" > 341< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > INT< / span > < span class = "p" > :< / span > < span class = "s2" > " INTEGER" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-342" > < a href = "#Presto-342" > < span class = "linenos" > 342< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > STRUCT< / span > < span class = "p" > :< / span > < span class = "s2" > " ROW" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-343" > < a href = "#Presto-343" > < span class = "linenos" > 343< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > :< / span > < span class = "s2" > " VARCHAR" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-344" > < a href = "#Presto-344" > < span class = "linenos" > 344< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMPTZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-345" > < a href = "#Presto-345" > < span class = "linenos" > 345< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMPNTZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-346" > < a href = "#Presto-346" > < span class = "linenos" > 346< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMETZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-347" > < a href = "#Presto-347" > < span class = "linenos" > 347< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto-348" > < a href = "#Presto-348" > < span class = "linenos" > 348< / span > < / a >
< / span > < span id = "Presto-349" > < a href = "#Presto-349" > < span class = "linenos" > 349< / span > < / a > < span class = "n" > TRANSFORMS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto-350" > < a href = "#Presto-350" > < span class = "linenos" > 350< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > TRANSFORMS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-351" > < a href = "#Presto-351" > < span class = "linenos" > 351< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AnyValue< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARBITRARY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-352" > < a href = "#Presto-352" > < span class = "linenos" > 352< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxQuantile< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " APPROX_PERCENTILE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-353" > < a href = "#Presto-353" > < span class = "linenos" > 353< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMax< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAX_BY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-354" > < a href = "#Presto-354" > < span class = "linenos" > 354< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMin< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MIN_BY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-355" > < a href = "#Presto-355" > < span class = "linenos" > 355< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Array< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " ARRAY[< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > flat< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ]" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-356" > < a href = "#Presto-356" > < span class = "linenos" > 356< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayAny< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ANY_MATCH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-357" > < a href = "#Presto-357" > < span class = "linenos" > 357< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayConcat< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " CONCAT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-358" > < a href = "#Presto-358" > < span class = "linenos" > 358< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayContains< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " CONTAINS" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-359" > < a href = "#Presto-359" > < span class = "linenos" > 359< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayToString< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_JOIN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-360" > < a href = "#Presto-360" > < span class = "linenos" > 360< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayUniqueAgg< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SET_AGG" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-361" > < a href = "#Presto-361" > < span class = "linenos" > 361< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AtTimeZone< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " AT_TIMEZONE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-362" > < a href = "#Presto-362" > < span class = "linenos" > 362< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseAnd< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_AND" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-363" > < a href = "#Presto-363" > < span class = "linenos" > 363< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseLeftShift< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-364" > < a href = "#Presto-364" > < span class = "linenos" > 364< / span > < / a > < span class = "s2" > " BITWISE_ARITHMETIC_SHIFT_LEFT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span >
< / span > < span id = "Presto-365" > < a href = "#Presto-365" > < span class = "linenos" > 365< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-366" > < a href = "#Presto-366" > < span class = "linenos" > 366< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseNot< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_NOT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-367" > < a href = "#Presto-367" > < span class = "linenos" > 367< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseOr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_OR" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-368" > < a href = "#Presto-368" > < span class = "linenos" > 368< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseRightShift< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-369" > < a href = "#Presto-369" > < span class = "linenos" > 369< / span > < / a > < span class = "s2" > " BITWISE_ARITHMETIC_SHIFT_RIGHT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span >
< / span > < span id = "Presto-370" > < a href = "#Presto-370" > < span class = "linenos" > 370< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-371" > < a href = "#Presto-371" > < span class = "linenos" > 371< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_XOR" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-372" > < a href = "#Presto-372" > < span class = "linenos" > 372< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Cast< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > epoch_cast_to_ts< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto-373" > < a href = "#Presto-373" > < span class = "linenos" > 373< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTime< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "o" > *< / span > < span class = "n" > _< / span > < span class = "p" > :< / span > < span class = "s2" > " CURRENT_TIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-374" > < a href = "#Presto-374" > < span class = "linenos" > 374< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTimestamp< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "o" > *< / span > < span class = "n" > _< / span > < span class = "p" > :< / span > < span class = "s2" > " CURRENT_TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-375" > < a href = "#Presto-375" > < span class = "linenos" > 375< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-376" > < a href = "#Presto-376" > < span class = "linenos" > 376< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-377" > < a href = "#Presto-377" > < span class = "linenos" > 377< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / span > < span class = "n" > unit_to_str< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto-378" > < a href = "#Presto-378" > < span class = "linenos" > 378< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-379" > < a href = "#Presto-379" > < span class = "linenos" > 379< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateStrToDate< / span > < span class = "p" > :< / span > < span class = "n" > datestrtodate_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-380" > < a href = "#Presto-380" > < span class = "linenos" > 380< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateToDi< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-381" > < a href = "#Presto-381" > < span class = "linenos" > 381< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(DATE_FORMAT(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > , < / span > < span class = "si" > {< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > DATEINT_FORMAT< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-382" > < a href = "#Presto-382" > < span class = "linenos" > 382< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateSub< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ,< / span > < span class = "n" > negate_interval< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-383" > < a href = "#Presto-383" > < span class = "linenos" > 383< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeek< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " ((< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s1" > ' DAY_OF_WEEK' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > % 7) + 1)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-384" > < a href = "#Presto-384" > < span class = "linenos" > 384< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeekIso< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAY_OF_WEEK" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-385" > < a href = "#Presto-385" > < span class = "linenos" > 385< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Decode< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > encode_decode_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " FROM_UTF8" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-386" > < a href = "#Presto-386" > < span class = "linenos" > 386< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DiToDate< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-387" > < a href = "#Presto-387" > < span class = "linenos" > 387< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(DATE_PARSE(CAST(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS VARCHAR), < / span > < span class = "si" > {< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > DATEINT_FORMAT< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS DATE)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-388" > < a href = "#Presto-388" > < span class = "linenos" > 388< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > encode_decode_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " TO_UTF8" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-389" > < a href = "#Presto-389" > < span class = "linenos" > 389< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FileFormatProperty< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " FORMAT=' < / span > < span class = "si" > {< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ()< / span > < span class = "si" > }< / span > < span class = "s2" > ' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-390" > < a href = "#Presto-390" > < span class = "linenos" > 390< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > First< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-391" > < a href = "#Presto-391" > < span class = "linenos" > 391< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FirstValue< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-392" > < a href = "#Presto-392" > < span class = "linenos" > 392< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FromTimeZone< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-393" > < a href = "#Presto-393" > < span class = "linenos" > 393< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " WITH_TIMEZONE(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > , < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' zone' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AT TIME ZONE ' UTC' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-394" > < a href = "#Presto-394" > < span class = "linenos" > 394< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "p" > :< / span > < span class = "n" > sequence_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-395" > < a href = "#Presto-395" > < span class = "linenos" > 395< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateDateArray< / span > < span class = "p" > :< / span > < span class = "n" > sequence_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-396" > < a href = "#Presto-396" > < span class = "linenos" > 396< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Group< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > unalias_group< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto-397" > < a href = "#Presto-397" > < span class = "linenos" > 397< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > If< / span > < span class = "p" > :< / span > < span class = "n" > if_sql< / span > < span class = "p" > (),< / span >
< / span > < span id = "Presto-398" > < a href = "#Presto-398" > < span class = "linenos" > 398< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ILike< / span > < span class = "p" > :< / span > < span class = "n" > no_ilike_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-399" > < a href = "#Presto-399" > < span class = "linenos" > 399< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Initcap< / span > < span class = "p" > :< / span > < span class = "n" > _initcap_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-400" > < a href = "#Presto-400" > < span class = "linenos" > 400< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > jsonextract_sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-401" > < a href = "#Presto-401" > < span class = "linenos" > 401< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Last< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-402" > < a href = "#Presto-402" > < span class = "linenos" > 402< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LastValue< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-403" > < a href = "#Presto-403" > < span class = "linenos" > 403< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LastDay< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " LAST_DAY_OF_MONTH" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-404" > < a href = "#Presto-404" > < span class = "linenos" > 404< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Lateral< / span > < span class = "p" > :< / span > < span class = "n" > explode_to_unnest_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-405" > < a href = "#Presto-405" > < span class = "linenos" > 405< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Left< / span > < span class = "p" > :< / span > < span class = "n" > left_to_substring_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-406" > < a href = "#Presto-406" > < span class = "linenos" > 406< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Levenshtein< / span > < span class = "p" > :< / span > < span class = "n" > unsupported_args< / span > < span class = "p" > (< / span > < span class = "s2" > " ins_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " del_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " sub_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " max_dist" < / span > < span class = "p" > )(< / span >
< / span > < span id = "Presto-407" > < a href = "#Presto-407" > < span class = "linenos" > 407< / span > < / a > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LEVENSHTEIN_DISTANCE" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-408" > < a href = "#Presto-408" > < span class = "linenos" > 408< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-409" > < a href = "#Presto-409" > < span class = "linenos" > 409< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LogicalAnd< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " BOOL_AND" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-410" > < a href = "#Presto-410" > < span class = "linenos" > 410< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LogicalOr< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " BOOL_OR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-411" > < a href = "#Presto-411" > < span class = "linenos" > 411< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pivot< / span > < span class = "p" > :< / span > < span class = "n" > no_pivot_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-412" > < a href = "#Presto-412" > < span class = "linenos" > 412< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Quantile< / span > < span class = "p" > :< / span > < span class = "n" > _quantile_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-413" > < a href = "#Presto-413" > < span class = "linenos" > 413< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtract< / span > < span class = "p" > :< / span > < span class = "n" > regexp_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-414" > < a href = "#Presto-414" > < span class = "linenos" > 414< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtractAll< / span > < span class = "p" > :< / span > < span class = "n" > regexp_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-415" > < a href = "#Presto-415" > < span class = "linenos" > 415< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Right< / span > < span class = "p" > :< / span > < span class = "n" > right_to_substring_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-416" > < a href = "#Presto-416" > < span class = "linenos" > 416< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SafeDivide< / span > < span class = "p" > :< / span > < span class = "n" > no_safe_divide_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-417" > < a href = "#Presto-417" > < span class = "linenos" > 417< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > :< / span > < span class = "n" > _schema_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-418" > < a href = "#Presto-418" > < span class = "linenos" > 418< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SchemaCommentProperty< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > naked_property< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-419" > < a href = "#Presto-419" > < span class = "linenos" > 419< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-420" > < a href = "#Presto-420" > < span class = "linenos" > 420< / span > < / a > < span class = "p" > [< / span >
< / span > < span id = "Presto-421" > < a href = "#Presto-421" > < span class = "linenos" > 421< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_qualify< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-422" > < a href = "#Presto-422" > < span class = "linenos" > 422< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_distinct_on< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-423" > < a href = "#Presto-423" > < span class = "linenos" > 423< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > explode_to_unnest< / span > < span class = "p" > (< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-424" > < a href = "#Presto-424" > < span class = "linenos" > 424< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_semi_and_anti_joins< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-425" > < a href = "#Presto-425" > < span class = "linenos" > 425< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "Presto-426" > < a href = "#Presto-426" > < span class = "linenos" > 426< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-427" > < a href = "#Presto-427" > < span class = "linenos" > 427< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "p" > :< / span > < span class = "n" > _no_sort_array< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-428" > < a href = "#Presto-428" > < span class = "linenos" > 428< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > str_position_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > generate_instance< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-429" > < a href = "#Presto-429" > < span class = "linenos" > 429< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToDate< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / span > < span class = "si" > {< / span > < span class = "n" > _str_to_time_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > e< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-430" > < a href = "#Presto-430" > < span class = "linenos" > 430< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToMap< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SPLIT_TO_MAP" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-431" > < a href = "#Presto-431" > < span class = "linenos" > 431< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToTime< / span > < span class = "p" > :< / span > < span class = "n" > _str_to_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-432" > < a href = "#Presto-432" > < span class = "linenos" > 432< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StructExtract< / span > < span class = "p" > :< / span > < span class = "n" > struct_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-433" > < a href = "#Presto-433" > < span class = "linenos" > 433< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Table< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > unnest_generate_series< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto-434" > < a href = "#Presto-434" > < span class = "linenos" > 434< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Timestamp< / span > < span class = "p" > :< / span > < span class = "n" > no_timestamp_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-435" > < a href = "#Presto-435" > < span class = "linenos" > 435< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-436" > < a href = "#Presto-436" > < span class = "linenos" > 436< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampTrunc< / span > < span class = "p" > :< / span > < span class = "n" > timestamptrunc_sql< / span > < span class = "p" > (),< / span >
< / span > < span id = "Presto-437" > < a href = "#Presto-437" > < span class = "linenos" > 437< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToDate< / span > < span class = "p" > :< / span > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-438" > < a href = "#Presto-438" > < span class = "linenos" > 438< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToTime< / span > < span class = "p" > :< / span > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-439" > < a href = "#Presto-439" > < span class = "linenos" > 439< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToUnix< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-440" > < a href = "#Presto-440" > < span class = "linenos" > 440< / span > < / a > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > TIME_FORMAT< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-441" > < a href = "#Presto-441" > < span class = "linenos" > 441< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-442" > < a href = "#Presto-442" > < span class = "linenos" > 442< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto-443" > < a href = "#Presto-443" > < span class = "linenos" > 443< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToUnix< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-444" > < a href = "#Presto-444" > < span class = "linenos" > 444< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ToChar< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto-445" > < a href = "#Presto-445" > < span class = "linenos" > 445< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TryCast< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > epoch_cast_to_ts< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto-446" > < a href = "#Presto-446" > < span class = "linenos" > 446< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDiToDi< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-447" > < a href = "#Presto-447" > < span class = "linenos" > 447< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(SUBSTR(REPLACE(CAST(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS VARCHAR), ' -' , ' ' ), 1, 8) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-448" > < a href = "#Presto-448" > < span class = "linenos" > 448< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_add_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-449" > < a href = "#Presto-449" > < span class = "linenos" > 449< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsDiff< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_diff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-450" > < a href = "#Presto-450" > < span class = "linenos" > 450< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsToDate< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_to_date_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-451" > < a href = "#Presto-451" > < span class = "linenos" > 451< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Unhex< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " FROM_HEX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-452" > < a href = "#Presto-452" > < span class = "linenos" > 452< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-453" > < a href = "#Presto-453" > < span class = "linenos" > 453< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " DATE_FORMAT(FROM_UNIXTIME(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ), < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-454" > < a href = "#Presto-454" > < span class = "linenos" > 454< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "p" > :< / span > < span class = "n" > _unix_to_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-455" > < a href = "#Presto-455" > < span class = "linenos" > 455< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTimeStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-456" > < a href = "#Presto-456" > < span class = "linenos" > 456< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(FROM_UNIXTIME(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS VARCHAR)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-457" > < a href = "#Presto-457" > < span class = "linenos" > 457< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > VariancePop< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " VAR_POP" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-458" > < a href = "#Presto-458" > < span class = "linenos" > 458< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > With< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > add_recursive_cte_column_names< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto-459" > < a href = "#Presto-459" > < span class = "linenos" > 459< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > WithinGroup< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-460" > < a href = "#Presto-460" > < span class = "linenos" > 460< / span > < / a > < span class = "p" > [< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > remove_within_group_for_percentiles< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto-461" > < a href = "#Presto-461" > < span class = "linenos" > 461< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-462" > < a href = "#Presto-462" > < span class = "linenos" > 462< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Xor< / span > < span class = "p" > :< / span > < span class = "n" > bool_xor_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-463" > < a href = "#Presto-463" > < span class = "linenos" > 463< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MD5" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-464" > < a href = "#Presto-464" > < span class = "linenos" > 464< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SHA1" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-465" > < a href = "#Presto-465" > < span class = "linenos" > 465< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > :< / span > < span class = "n" > sha256_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-466" > < a href = "#Presto-466" > < span class = "linenos" > 466< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto-467" > < a href = "#Presto-467" > < span class = "linenos" > 467< / span > < / a >
< / span > < span id = "Presto-468" > < a href = "#Presto-468" > < span class = "linenos" > 468< / span > < / a > < span class = "n" > RESERVED_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto-469" > < a href = "#Presto-469" > < span class = "linenos" > 469< / span > < / a > < span class = "s2" > " alter" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-470" > < a href = "#Presto-470" > < span class = "linenos" > 470< / span > < / a > < span class = "s2" > " and" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-471" > < a href = "#Presto-471" > < span class = "linenos" > 471< / span > < / a > < span class = "s2" > " as" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-472" > < a href = "#Presto-472" > < span class = "linenos" > 472< / span > < / a > < span class = "s2" > " between" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-473" > < a href = "#Presto-473" > < span class = "linenos" > 473< / span > < / a > < span class = "s2" > " by" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-474" > < a href = "#Presto-474" > < span class = "linenos" > 474< / span > < / a > < span class = "s2" > " case" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-475" > < a href = "#Presto-475" > < span class = "linenos" > 475< / span > < / a > < span class = "s2" > " cast" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-476" > < a href = "#Presto-476" > < span class = "linenos" > 476< / span > < / a > < span class = "s2" > " constraint" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-477" > < a href = "#Presto-477" > < span class = "linenos" > 477< / span > < / a > < span class = "s2" > " create" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-478" > < a href = "#Presto-478" > < span class = "linenos" > 478< / span > < / a > < span class = "s2" > " cross" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-479" > < a href = "#Presto-479" > < span class = "linenos" > 479< / span > < / a > < span class = "s2" > " current_time" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-480" > < a href = "#Presto-480" > < span class = "linenos" > 480< / span > < / a > < span class = "s2" > " current_timestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-481" > < a href = "#Presto-481" > < span class = "linenos" > 481< / span > < / a > < span class = "s2" > " deallocate" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-482" > < a href = "#Presto-482" > < span class = "linenos" > 482< / span > < / a > < span class = "s2" > " delete" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-483" > < a href = "#Presto-483" > < span class = "linenos" > 483< / span > < / a > < span class = "s2" > " describe" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-484" > < a href = "#Presto-484" > < span class = "linenos" > 484< / span > < / a > < span class = "s2" > " distinct" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-485" > < a href = "#Presto-485" > < span class = "linenos" > 485< / span > < / a > < span class = "s2" > " drop" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-486" > < a href = "#Presto-486" > < span class = "linenos" > 486< / span > < / a > < span class = "s2" > " else" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-487" > < a href = "#Presto-487" > < span class = "linenos" > 487< / span > < / a > < span class = "s2" > " end" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-488" > < a href = "#Presto-488" > < span class = "linenos" > 488< / span > < / a > < span class = "s2" > " escape" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-489" > < a href = "#Presto-489" > < span class = "linenos" > 489< / span > < / a > < span class = "s2" > " except" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-490" > < a href = "#Presto-490" > < span class = "linenos" > 490< / span > < / a > < span class = "s2" > " execute" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-491" > < a href = "#Presto-491" > < span class = "linenos" > 491< / span > < / a > < span class = "s2" > " exists" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-492" > < a href = "#Presto-492" > < span class = "linenos" > 492< / span > < / a > < span class = "s2" > " extract" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-493" > < a href = "#Presto-493" > < span class = "linenos" > 493< / span > < / a > < span class = "s2" > " false" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-494" > < a href = "#Presto-494" > < span class = "linenos" > 494< / span > < / a > < span class = "s2" > " for" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-495" > < a href = "#Presto-495" > < span class = "linenos" > 495< / span > < / a > < span class = "s2" > " from" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-496" > < a href = "#Presto-496" > < span class = "linenos" > 496< / span > < / a > < span class = "s2" > " full" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-497" > < a href = "#Presto-497" > < span class = "linenos" > 497< / span > < / a > < span class = "s2" > " group" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-498" > < a href = "#Presto-498" > < span class = "linenos" > 498< / span > < / a > < span class = "s2" > " having" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-499" > < a href = "#Presto-499" > < span class = "linenos" > 499< / span > < / a > < span class = "s2" > " in" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-500" > < a href = "#Presto-500" > < span class = "linenos" > 500< / span > < / a > < span class = "s2" > " inner" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-501" > < a href = "#Presto-501" > < span class = "linenos" > 501< / span > < / a > < span class = "s2" > " insert" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-502" > < a href = "#Presto-502" > < span class = "linenos" > 502< / span > < / a > < span class = "s2" > " intersect" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-503" > < a href = "#Presto-503" > < span class = "linenos" > 503< / span > < / a > < span class = "s2" > " into" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-504" > < a href = "#Presto-504" > < span class = "linenos" > 504< / span > < / a > < span class = "s2" > " is" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-505" > < a href = "#Presto-505" > < span class = "linenos" > 505< / span > < / a > < span class = "s2" > " join" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-506" > < a href = "#Presto-506" > < span class = "linenos" > 506< / span > < / a > < span class = "s2" > " left" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-507" > < a href = "#Presto-507" > < span class = "linenos" > 507< / span > < / a > < span class = "s2" > " like" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-508" > < a href = "#Presto-508" > < span class = "linenos" > 508< / span > < / a > < span class = "s2" > " natural" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-509" > < a href = "#Presto-509" > < span class = "linenos" > 509< / span > < / a > < span class = "s2" > " not" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-510" > < a href = "#Presto-510" > < span class = "linenos" > 510< / span > < / a > < span class = "s2" > " null" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-511" > < a href = "#Presto-511" > < span class = "linenos" > 511< / span > < / a > < span class = "s2" > " on" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-512" > < a href = "#Presto-512" > < span class = "linenos" > 512< / span > < / a > < span class = "s2" > " or" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-513" > < a href = "#Presto-513" > < span class = "linenos" > 513< / span > < / a > < span class = "s2" > " order" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-514" > < a href = "#Presto-514" > < span class = "linenos" > 514< / span > < / a > < span class = "s2" > " outer" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-515" > < a href = "#Presto-515" > < span class = "linenos" > 515< / span > < / a > < span class = "s2" > " prepare" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-516" > < a href = "#Presto-516" > < span class = "linenos" > 516< / span > < / a > < span class = "s2" > " right" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-517" > < a href = "#Presto-517" > < span class = "linenos" > 517< / span > < / a > < span class = "s2" > " select" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-518" > < a href = "#Presto-518" > < span class = "linenos" > 518< / span > < / a > < span class = "s2" > " table" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-519" > < a href = "#Presto-519" > < span class = "linenos" > 519< / span > < / a > < span class = "s2" > " then" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-520" > < a href = "#Presto-520" > < span class = "linenos" > 520< / span > < / a > < span class = "s2" > " true" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-521" > < a href = "#Presto-521" > < span class = "linenos" > 521< / span > < / a > < span class = "s2" > " union" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-522" > < a href = "#Presto-522" > < span class = "linenos" > 522< / span > < / a > < span class = "s2" > " using" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-523" > < a href = "#Presto-523" > < span class = "linenos" > 523< / span > < / a > < span class = "s2" > " values" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-524" > < a href = "#Presto-524" > < span class = "linenos" > 524< / span > < / a > < span class = "s2" > " when" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-525" > < a href = "#Presto-525" > < span class = "linenos" > 525< / span > < / a > < span class = "s2" > " where" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-526" > < a href = "#Presto-526" > < span class = "linenos" > 526< / span > < / a > < span class = "s2" > " with" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-527" > < a href = "#Presto-527" > < span class = "linenos" > 527< / span > < / a > < span class = "p" > }< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto-528" > < a href = "#Presto-528" > < span class = "linenos" > 528< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto-529" > < a href = "#Presto-529" > < span class = "linenos" > 529< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > md5_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-530" > < a href = "#Presto-530" > < span class = "linenos" > 530< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto-531" > < a href = "#Presto-531" > < span class = "linenos" > 531< / span > < / a >
< / span > < span id = "Presto-532" > < a href = "#Presto-532" > < span class = "linenos" > 532< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-533" > < a href = "#Presto-533" > < span class = "linenos" > 533< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "Presto-534" > < a href = "#Presto-534" > < span class = "linenos" > 534< / span > < / a >
< / span > < span id = "Presto-535" > < a href = "#Presto-535" > < span class = "linenos" > 535< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-536" > < a href = "#Presto-536" > < span class = "linenos" > 536< / span > < / a >
< / span > < span id = "Presto-537" > < a href = "#Presto-537" > < span class = "linenos" > 537< / span > < / a > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "o" > *< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT_TYPES< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-538" > < a href = "#Presto-538" > < span class = "linenos" > 538< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto-539" > < a href = "#Presto-539" > < span class = "linenos" > 539< / span > < / a >
< / span > < span id = "Presto-540" > < a href = "#Presto-540" > < span class = "linenos" > 540< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " LOWER" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_HEX" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " MD5" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))))< / span >
< / span > < span id = "Presto-541" > < a href = "#Presto-541" > < span class = "linenos" > 541< / span > < / a >
< / span > < span id = "Presto-542" > < a href = "#Presto-542" > < span class = "linenos" > 542< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtounix_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToUnix< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-543" > < a href = "#Presto-543" > < span class = "linenos" > 543< / span > < / a > < span class = "c1" > # Since `TO_UNIXTIME` requires a `TIMESTAMP`, we need to parse the argument into one.< / span >
< / span > < span id = "Presto-544" > < a href = "#Presto-544" > < span class = "linenos" > 544< / span > < / a > < span class = "c1" > # To do this, we first try to `DATE_PARSE` it, but since this can fail when there' s a< / span >
< / span > < span id = "Presto-545" > < a href = "#Presto-545" > < span class = "linenos" > 545< / span > < / a > < span class = "c1" > # timezone involved, we wrap it in a `TRY` call and use `PARSE_DATETIME` as a fallback,< / span >
< / span > < span id = "Presto-546" > < a href = "#Presto-546" > < span class = "linenos" > 546< / span > < / a > < span class = "c1" > # which seems to be using the same time mapping as Hive, as per:< / span >
< / span > < span id = "Presto-547" > < a href = "#Presto-547" > < span class = "linenos" > 547< / span > < / a > < span class = "c1" > # https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html< / span >
< / span > < span id = "Presto-548" > < a href = "#Presto-548" > < span class = "linenos" > 548< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto-549" > < a href = "#Presto-549" > < span class = "linenos" > 549< / span > < / a > < span class = "n" > value_as_text< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-550" > < a href = "#Presto-550" > < span class = "linenos" > 550< / span > < / a > < span class = "n" > value_as_timestamp< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-551" > < a href = "#Presto-551" > < span class = "linenos" > 551< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > )< / span > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "k" > else< / span > < span class = "n" > this< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto-552" > < a href = "#Presto-552" > < span class = "linenos" > 552< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto-553" > < a href = "#Presto-553" > < span class = "linenos" > 553< / span > < / a >
< / span > < span id = "Presto-554" > < a href = "#Presto-554" > < span class = "linenos" > 554< / span > < / a > < span class = "n" > parse_without_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_text< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto-555" > < a href = "#Presto-555" > < span class = "linenos" > 555< / span > < / a >
< / span > < span id = "Presto-556" > < a href = "#Presto-556" > < span class = "linenos" > 556< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-557" > < a href = "#Presto-557" > < span class = "linenos" > 557< / span > < / a > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_timestamp< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-558" > < a href = "#Presto-558" > < span class = "linenos" > 558< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto-559" > < a href = "#Presto-559" > < span class = "linenos" > 559< / span > < / a > < span class = "n" > parse_with_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-560" > < a href = "#Presto-560" > < span class = "linenos" > 560< / span > < / a > < span class = "s2" > " PARSE_DATETIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-561" > < a href = "#Presto-561" > < span class = "linenos" > 561< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-562" > < a href = "#Presto-562" > < span class = "linenos" > 562< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_MAPPING< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_TRIE< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-563" > < a href = "#Presto-563" > < span class = "linenos" > 563< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto-564" > < a href = "#Presto-564" > < span class = "linenos" > 564< / span > < / a > < span class = "n" > coalesced< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " COALESCE" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TRY" < / span > < span class = "p" > ,< / span > < span class = "n" > parse_without_tz< / span > < span class = "p" > ),< / span > < span class = "n" > parse_with_tz< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-565" > < a href = "#Presto-565" > < span class = "linenos" > 565< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ,< / span > < span class = "n" > coalesced< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-566" > < a href = "#Presto-566" > < span class = "linenos" > 566< / span > < / a >
< / span > < span id = "Presto-567" > < a href = "#Presto-567" > < span class = "linenos" > 567< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Bracket< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-568" > < a href = "#Presto-568" > < span class = "linenos" > 568< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " safe" < / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-569" > < a href = "#Presto-569" > < span class = "linenos" > 569< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-570" > < a href = "#Presto-570" > < span class = "linenos" > 570< / span > < / a > < span class = "s2" > " ELEMENT_AT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-571" > < a href = "#Presto-571" > < span class = "linenos" > 571< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-572" > < a href = "#Presto-572" > < span class = "linenos" > 572< / span > < / a > < span class = "n" > seq_get< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-573" > < a href = "#Presto-573" > < span class = "linenos" > 573< / span > < / a > < span class = "n" > apply_index_offset< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-574" > < a href = "#Presto-574" > < span class = "linenos" > 574< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-575" > < a href = "#Presto-575" > < span class = "linenos" > 575< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-576" > < a href = "#Presto-576" > < span class = "linenos" > 576< / span > < / a > < span class = "mi" > 1< / span > < span class = "o" > -< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-577" > < a href = "#Presto-577" > < span class = "linenos" > 577< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-578" > < a href = "#Presto-578" > < span class = "linenos" > 578< / span > < / a > < span class = "mi" > 0< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-579" > < a href = "#Presto-579" > < span class = "linenos" > 579< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto-580" > < a href = "#Presto-580" > < span class = "linenos" > 580< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto-581" > < a href = "#Presto-581" > < span class = "linenos" > 581< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-582" > < a href = "#Presto-582" > < span class = "linenos" > 582< / span > < / a >
< / span > < span id = "Presto-583" > < a href = "#Presto-583" > < span class = "linenos" > 583< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > struct_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-584" > < a href = "#Presto-584" > < span class = "linenos" > 584< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "Presto-585" > < a href = "#Presto-585" > < span class = "linenos" > 585< / span > < / a >
< / span > < span id = "Presto-586" > < a href = "#Presto-586" > < span class = "linenos" > 586< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-587" > < a href = "#Presto-587" > < span class = "linenos" > 587< / span > < / a > < span class = "n" > values< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto-588" > < a href = "#Presto-588" > < span class = "linenos" > 588< / span > < / a > < span class = "n" > schema< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto-589" > < a href = "#Presto-589" > < span class = "linenos" > 589< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto-590" > < a href = "#Presto-590" > < span class = "linenos" > 590< / span > < / a >
< / span > < span id = "Presto-591" > < a href = "#Presto-591" > < span class = "linenos" > 591< / span > < / a > < span class = "k" > for< / span > < span class = "n" > e< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-592" > < a href = "#Presto-592" > < span class = "linenos" > 592< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PropertyEQ< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-593" > < a href = "#Presto-593" > < span class = "linenos" > 593< / span > < / a > < span class = "k" > if< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "ow" > and< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > UNKNOWN< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-594" > < a href = "#Presto-594" > < span class = "linenos" > 594< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto-595" > < a href = "#Presto-595" > < span class = "linenos" > 595< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-596" > < a href = "#Presto-596" > < span class = "linenos" > 596< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-597" > < a href = "#Presto-597" > < span class = "linenos" > 597< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto-598" > < a href = "#Presto-598" > < span class = "linenos" > 598< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-599" > < a href = "#Presto-599" > < span class = "linenos" > 599< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto-600" > < a href = "#Presto-600" > < span class = "linenos" > 600< / span > < / a >
< / span > < span id = "Presto-601" > < a href = "#Presto-601" > < span class = "linenos" > 601< / span > < / a > < span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-602" > < a href = "#Presto-602" > < span class = "linenos" > 602< / span > < / a >
< / span > < span id = "Presto-603" > < a href = "#Presto-603" > < span class = "linenos" > 603< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > size< / span > < span class = "ow" > or< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "o" > !=< / span > < span class = "n" > size< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-604" > < a href = "#Presto-604" > < span class = "linenos" > 604< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unknown_type< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-605" > < a href = "#Presto-605" > < span class = "linenos" > 605< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-606" > < a href = "#Presto-606" > < span class = "linenos" > 606< / span > < / a > < span class = "s2" > " Cannot convert untyped key-value definitions (try annotate_types)." < / span >
< / span > < span id = "Presto-607" > < a href = "#Presto-607" > < span class = "linenos" > 607< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto-608" > < a href = "#Presto-608" > < span class = "linenos" > 608< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ROW" < / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > values< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-609" > < a href = "#Presto-609" > < span class = "linenos" > 609< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > values< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
< / span > < span id = "Presto-610" > < a href = "#Presto-610" > < span class = "linenos" > 610< / span > < / a >
< / span > < span id = "Presto-611" > < a href = "#Presto-611" > < span class = "linenos" > 611< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > interval_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-612" > < a href = "#Presto-612" > < span class = "linenos" > 612< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "ow" > and< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > text< / span > < span class = "p" > (< / span > < span class = "s2" > " unit" < / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " WEEK" < / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-613" > < a href = "#Presto-613" > < span class = "linenos" > 613< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "si" > }< / span > < span class = "s2" > * INTERVAL ' 7' DAY)" < / span >
< / span > < span id = "Presto-614" > < a href = "#Presto-614" > < span class = "linenos" > 614< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > interval_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-615" > < a href = "#Presto-615" > < span class = "linenos" > 615< / span > < / a >
< / span > < span id = "Presto-616" > < a href = "#Presto-616" > < span class = "linenos" > 616< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > transaction_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Transaction< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-617" > < a href = "#Presto-617" > < span class = "linenos" > 617< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " modes" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-618" > < a href = "#Presto-618" > < span class = "linenos" > 618< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > modes< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "k" > if< / span > < span class = "n" > modes< / span > < span class = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "Presto-619" > < a href = "#Presto-619" > < span class = "linenos" > 619< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " START TRANSACTION< / span > < span class = "si" > {< / span > < span class = "n" > modes< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "Presto-620" > < a href = "#Presto-620" > < span class = "linenos" > 620< / span > < / a >
< / span > < span id = "Presto-621" > < a href = "#Presto-621" > < span class = "linenos" > 621< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > offset_limit_modifiers< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-622" > < a href = "#Presto-622" > < span class = "linenos" > 622< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > ,< / span > < span class = "n" > fetch< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "p" > ,< / span > < span class = "n" > limit< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Fetch< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Limit< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto-623" > < a href = "#Presto-623" > < span class = "linenos" > 623< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]:< / span >
< / span > < span id = "Presto-624" > < a href = "#Presto-624" > < span class = "linenos" > 624< / span > < / a > < span class = "k" > return< / span > < span class = "p" > [< / span >
< / span > < span id = "Presto-625" > < a href = "#Presto-625" > < span class = "linenos" > 625< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-626" > < a href = "#Presto-626" > < span class = "linenos" > 626< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > limit< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-627" > < a href = "#Presto-627" > < span class = "linenos" > 627< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "Presto-628" > < a href = "#Presto-628" > < span class = "linenos" > 628< / span > < / a >
< / span > < span id = "Presto-629" > < a href = "#Presto-629" > < span class = "linenos" > 629< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > create_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Create< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-630" > < a href = "#Presto-630" > < span class = "linenos" > 630< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto-631" > < a href = "#Presto-631" > < span class = "linenos" > 631< / span > < / a > < span class = "sd" > Presto doesn' t support CREATE VIEW with expressions (ex: `CREATE VIEW x (cola)` then `(cola)` is the expression),< / span >
< / span > < span id = "Presto-632" > < a href = "#Presto-632" > < span class = "linenos" > 632< / span > < / a > < span class = "sd" > so we need to remove them< / span >
< / span > < span id = "Presto-633" > < a href = "#Presto-633" > < span class = "linenos" > 633< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto-634" > < a href = "#Presto-634" > < span class = "linenos" > 634< / span > < / a > < span class = "n" > kind< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " kind" < / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto-635" > < a href = "#Presto-635" > < span class = "linenos" > 635< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto-636" > < a href = "#Presto-636" > < span class = "linenos" > 636< / span > < / a > < span class = "k" > if< / span > < span class = "n" > kind< / span > < span class = "o" > ==< / span > < span class = "s2" > " VIEW" < / span > < span class = "ow" > and< / span > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-637" > < a href = "#Presto-637" > < span class = "linenos" > 637< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expressions" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-638" > < a href = "#Presto-638" > < span class = "linenos" > 638< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > create_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-639" > < a href = "#Presto-639" > < span class = "linenos" > 639< / span > < / a >
< / span > < span id = "Presto-640" > < a href = "#Presto-640" > < span class = "linenos" > 640< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > delete_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-641" > < a href = "#Presto-641" > < span class = "linenos" > 641< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto-642" > < a href = "#Presto-642" > < span class = "linenos" > 642< / span > < / a > < span class = "sd" > Presto only supports DELETE FROM for a single table without an alias, so we need< / span >
< / span > < span id = "Presto-643" > < a href = "#Presto-643" > < span class = "linenos" > 643< / span > < / a > < span class = "sd" > to remove the unnecessary parts. If the original DELETE statement contains more< / span >
< / span > < span id = "Presto-644" > < a href = "#Presto-644" > < span class = "linenos" > 644< / span > < / a > < span class = "sd" > than one table to be deleted, we can' t safely map it 1-1 to a Presto statement.< / span >
< / span > < span id = "Presto-645" > < a href = "#Presto-645" > < span class = "linenos" > 645< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto-646" > < a href = "#Presto-646" > < span class = "linenos" > 646< / span > < / a > < span class = "n" > tables< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "p" > [< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto-647" > < a href = "#Presto-647" > < span class = "linenos" > 647< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > tables< / span > < span class = "p" > )< / span > < span class = "o" > > < / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-648" > < a href = "#Presto-648" > < span class = "linenos" > 648< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-649" > < a href = "#Presto-649" > < span class = "linenos" > 649< / span > < / a >
< / span > < span id = "Presto-650" > < a href = "#Presto-650" > < span class = "linenos" > 650< / span > < / a > < span class = "n" > table< / span > < span class = "o" > =< / span > < span class = "n" > tables< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto-651" > < a href = "#Presto-651" > < span class = "linenos" > 651< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " this" < / span > < span class = "p" > ,< / span > < span class = "n" > table< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-652" > < a href = "#Presto-652" > < span class = "linenos" > 652< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto-653" > < a href = "#Presto-653" > < span class = "linenos" > 653< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto-654" > < a href = "#Presto-654" > < span class = "linenos" > 654< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > table< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Table< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-655" > < a href = "#Presto-655" > < span class = "linenos" > 655< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > =< / span > < span class = "n" > table< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-656" > < a href = "#Presto-656" > < span class = "linenos" > 656< / span > < / a > < span class = "k" > if< / span > < span class = "n" > table_alias< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-657" > < a href = "#Presto-657" > < span class = "linenos" > 657< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / span >
< / span > < span id = "Presto-658" > < a href = "#Presto-658" > < span class = "linenos" > 658< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > transform< / span > < span class = "p" > (< / span > < span class = "n" > unqualify_columns< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto-659" > < a href = "#Presto-659" > < span class = "linenos" > 659< / span > < / a >
< / span > < span id = "Presto-660" > < a href = "#Presto-660" > < span class = "linenos" > 660< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-661" > < a href = "#Presto-661" > < span class = "linenos" > 661< / span > < / a >
< / span > < span id = "Presto-662" > < a href = "#Presto-662" > < span class = "linenos" > 662< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > jsonextract_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-663" > < a href = "#Presto-663" > < span class = "linenos" > 663< / span > < / a > < span class = "n" > is_json_extract< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > settings< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract_is_json_extract" < / span > < span class = "p" > ,< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-664" > < a href = "#Presto-664" > < span class = "linenos" > 664< / span > < / a >
< / span > < span id = "Presto-665" > < a href = "#Presto-665" > < span class = "linenos" > 665< / span > < / a > < span class = "c1" > # Generate JSON_EXTRACT unless the user has configured that a Snowflake / Databricks< / span >
< / span > < span id = "Presto-666" > < a href = "#Presto-666" > < span class = "linenos" > 666< / span > < / a > < span class = "c1" > # VARIANT extract (e.g. col:x.y) should map to dot notation (i.e ROW access) in Presto/Trino< / span >
< / span > < span id = "Presto-667" > < a href = "#Presto-667" > < span class = "linenos" > 667< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > is_json_extract< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-668" > < a href = "#Presto-668" > < span class = "linenos" > 668< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-669" > < a href = "#Presto-669" > < span class = "linenos" > 669< / span > < / a > < span class = "s2" > " JSON_EXTRACT" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span >
< / span > < span id = "Presto-670" > < a href = "#Presto-670" > < span class = "linenos" > 670< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto-671" > < a href = "#Presto-671" > < span class = "linenos" > 671< / span > < / a >
< / span > < span id = "Presto-672" > < a href = "#Presto-672" > < span class = "linenos" > 672< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-673" > < a href = "#Presto-673" > < span class = "linenos" > 673< / span > < / a >
< / span > < span id = "Presto-674" > < a href = "#Presto-674" > < span class = "linenos" > 674< / span > < / a > < span class = "c1" > # Convert the JSONPath extraction `JSON_EXTRACT(col, ' $.x.y) to a ROW access col.x.y< / span >
< / span > < span id = "Presto-675" > < a href = "#Presto-675" > < span class = "linenos" > 675< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto-676" > < a href = "#Presto-676" > < span class = "linenos" > 676< / span > < / a > < span class = "k" > for< / span > < span class = "n" > path_key< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > :]:< / span >
< / span > < span id = "Presto-677" > < a href = "#Presto-677" > < span class = "linenos" > 677< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > path_key< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathKey< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-678" > < a href = "#Presto-678" > < span class = "linenos" > 678< / span > < / a > < span class = "c1" > # Cannot transpile subscripts, wildcards etc to dot notation< / span >
< / span > < span id = "Presto-679" > < a href = "#Presto-679" > < span class = "linenos" > 679< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-680" > < a href = "#Presto-680" > < span class = "linenos" > 680< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Cannot transpile JSONPath segment ' < / span > < span class = "si" > {< / span > < span class = "n" > path_key< / span > < span class = "si" > }< / span > < span class = "s2" > ' to ROW access" < / span >
< / span > < span id = "Presto-681" > < a href = "#Presto-681" > < span class = "linenos" > 681< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto-682" > < a href = "#Presto-682" > < span class = "linenos" > 682< / span > < / a > < span class = "k" > continue< / span >
< / span > < span id = "Presto-683" > < a href = "#Presto-683" > < span class = "linenos" > 683< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "n" > path_key< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto-684" > < a href = "#Presto-684" > < span class = "linenos" > 684< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SAFE_IDENTIFIER_RE< / span > < span class = "o" > .< / span > < span class = "n" > match< / span > < span class = "p" > (< / span > < span class = "n" > key< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto-685" > < a href = "#Presto-685" > < span class = "linenos" > 685< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s1" > ' " < / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s1" > " ' < / span >
< / span > < span id = "Presto-686" > < a href = "#Presto-686" > < span class = "linenos" > 686< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " .< / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-687" > < a href = "#Presto-687" > < span class = "linenos" > 687< / span > < / a >
< / span > < span id = "Presto-688" > < a href = "#Presto-688" > < span class = "linenos" > 688< / span > < / a > < span class = "n" > expr< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > segments< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto-689" > < a href = "#Presto-689" > < span class = "linenos" > 689< / span > < / a >
< / span > < span id = "Presto-690" > < a href = "#Presto-690" > < span class = "linenos" > 690< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }{< / span > < span class = "n" > expr< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "Presto-691" > < a href = "#Presto-691" > < span class = "linenos" > 691< / span > < / a >
< / span > < span id = "Presto-692" > < a href = "#Presto-692" > < span class = "linenos" > 692< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > groupconcat_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GroupConcat< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto-693" > < a href = "#Presto-693" > < span class = "linenos" > 693< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto-694" > < a href = "#Presto-694" > < span class = "linenos" > 694< / span > < / a > < span class = "s2" > " ARRAY_JOIN" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto-695" > < a href = "#Presto-695" > < span class = "linenos" > 695< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_AGG" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-696" > < a href = "#Presto-696" > < span class = "linenos" > 696< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " separator" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto-697" > < a href = "#Presto-697" > < span class = "linenos" > 697< / span > < / a > < span class = "p" > )< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
2025-02-13 20:15:27 +01:00
< div id = "Presto.INDEX_OFFSET" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INDEX_OFFSET< / span > =
< span class = "default_value" > 1< / span >
< / div >
< a class = "headerlink" href = "#Presto.INDEX_OFFSET" > < / a >
2025-02-13 21:29:39 +01:00
< div class = "docstring" > < p > The base index offset for arrays.< / p >
2025-02-13 21:19:14 +01:00
< / div >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.NULL_ORDERING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > NULL_ORDERING< / span > =
< span class = "default_value" > ' nulls_are_last' < / span >
< / div >
< a class = "headerlink" href = "#Presto.NULL_ORDERING" > < / a >
2025-02-13 21:29:39 +01:00
< div class = "docstring" > < p > Default < code > NULL< / code > ordering method to use if not explicitly set.
2025-02-13 21:19:14 +01:00
Possible values: < code > "nulls_are_small"< / code > , < code > "nulls_are_large"< / code > , < code > "nulls_are_last"< / code > < / p >
< / div >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.TIME_FORMAT" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TIME_FORMAT< / span > =
< span class = "default_value" > " ' %Y-%m-%d %T' " < / span >
< / div >
< a class = "headerlink" href = "#Presto.TIME_FORMAT" > < / a >
< / div >
< div id = "Presto.STRICT_STRING_CONCAT" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > STRICT_STRING_CONCAT< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#Presto.STRICT_STRING_CONCAT" > < / a >
2025-02-13 21:29:39 +01:00
< div class = "docstring" > < p > Whether < code > CONCAT< / code > 's arguments must be strings.< / p >
2025-02-13 21:19:14 +01:00
< / div >
2025-02-13 20:15:27 +01:00
2025-02-13 21:03:38 +01:00
< / div >
< div id = "Presto.SUPPORTS_SEMI_ANTI_JOIN" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_SEMI_ANTI_JOIN< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.SUPPORTS_SEMI_ANTI_JOIN" > < / a >
2025-02-13 21:29:39 +01:00
< div class = "docstring" > < p > Whether < code > SEMI< / code > or < code > ANTI< / code > joins are supported.< / p >
2025-02-13 21:19:14 +01:00
< / div >
2025-02-13 21:03:38 +01:00
2025-02-13 20:15:27 +01:00
< / div >
2025-02-13 21:17:09 +01:00
< div id = "Presto.TYPED_DIVISION" class = "classattr" >
2025-02-13 20:15:27 +01:00
< div class = "attr variable" >
2025-02-13 21:17:09 +01:00
< span class = "name" > TYPED_DIVISION< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#Presto.TYPED_DIVISION" > < / a >
2025-02-13 21:19:14 +01:00
< div class = "docstring" > < p > Whether the behavior of < code > a / b< / code > depends on the types of < code > a< / code > and < code > b< / code > .
False means < code > a / b< / code > is always float division.
True means < code > a / b< / code > is integer division if both < code > a< / code > and < code > b< / code > are integers.< / p >
< / div >
< / div >
< div id = "Presto.TABLESAMPLE_SIZE_IS_PERCENT" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TABLESAMPLE_SIZE_IS_PERCENT< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#Presto.TABLESAMPLE_SIZE_IS_PERCENT" > < / a >
2025-02-13 21:17:09 +01:00
2025-02-13 21:29:39 +01:00
< div class = "docstring" > < p > Whether a size in the table sample clause represents percentage.< / p >
2025-02-13 21:19:14 +01:00
< / div >
2025-02-13 21:17:09 +01:00
2025-02-13 21:30:28 +01:00
< / div >
< div id = "Presto.LOG_BASE_FIRST" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > LOG_BASE_FIRST< / span > < span class = "annotation" > : Optional[bool]< / span > =
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#Presto.LOG_BASE_FIRST" > < / a >
< div class = "docstring" > < p > Whether the base comes first in the < code > LOG< / code > function.
Possible values: < code > True< / code > , < code > False< / code > , < code > None< / code > (two arguments are not supported by < code > LOG< / code > )< / p >
< / div >
2025-02-13 21:52:32 +01:00
< / div >
< div id = "Presto.TIME_MAPPING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TIME_MAPPING< / span > =
< input id = "Presto.TIME_MAPPING-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "Presto.TIME_MAPPING-view-value" > < / label > < span class = "default_value" > {' %M' : ' %B' , ' %c' : ' %-m' , ' %e' : ' %-d' , ' %h' : ' %I' , ' %i' : ' %M' , ' %s' : ' %S' , ' %u' : ' %W' , ' %k' : ' %-H' , ' %l' : ' %-I' , ' %T' : ' %H:%M:%S' , ' %W' : ' %A' }< / span >
< / div >
< a class = "headerlink" href = "#Presto.TIME_MAPPING" > < / a >
< div class = "docstring" > < p > Associates this dialect's time formats with their equivalent Python < code > strftime< / code > formats.< / p >
< / div >
2025-02-13 21:17:09 +01:00
< / div >
< div id = "Presto.NORMALIZATION_STRATEGY" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > NORMALIZATION_STRATEGY< / span > =
< span class = "default_value" > < NormalizationStrategy.CASE_INSENSITIVE: ' CASE_INSENSITIVE' > < / span >
2025-02-13 20:15:27 +01:00
< / div >
2025-02-13 21:17:09 +01:00
< a class = "headerlink" href = "#Presto.NORMALIZATION_STRATEGY" > < / a >
2025-02-13 20:15:27 +01:00
2025-02-13 21:19:14 +01:00
< div class = "docstring" > < p > Specifies the strategy according to which identifiers should be normalized.< / p >
< / div >
2025-02-13 20:15:27 +01:00
2025-02-13 21:51:42 +01:00
< / div >
< div id = "Presto.ANNOTATORS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > ANNOTATORS< / span > =
< input id = "Presto.ANNOTATORS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:57:37 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.ANNOTATORS-view-value" > < / label > < span class = "default_value" > {< class ' < a href = "../expressions.html#Alias" > sqlglot.expressions.Alias< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#BitwiseNot" > sqlglot.expressions.BitwiseNot< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Neg" > sqlglot.expressions.Neg< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Not" > sqlglot.expressions.Not< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Paren" > sqlglot.expressions.Paren< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#PivotAlias" > sqlglot.expressions.PivotAlias< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Unary" > sqlglot.expressions.Unary< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Add" > sqlglot.expressions.Add< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#And" > sqlglot.expressions.And< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#ArrayContains" > sqlglot.expressions.ArrayContains< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#ArrayContainsAll" > sqlglot.expressions.ArrayContainsAll< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#ArrayOverlaps" > sqlglot.expressions.ArrayOverlaps< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Binary" > sqlglot.expressions.Binary< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#BitwiseAnd" > sqlglot.expressions.BitwiseAnd< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#BitwiseLeftShift" > sqlglot.expressions.BitwiseLeftShift< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#BitwiseOr" > sqlglot.expressions.BitwiseOr< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#BitwiseRightShift" > sqlglot.expressions.BitwiseRightShift< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#BitwiseXor" > sqlglot.expressions.BitwiseXor< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Collate" > sqlglot.expressions.Collate< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Connector" > sqlglot.expressions.Connector< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Corr" > sqlglot.expressions.Corr< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#CovarPop" > sqlglot.expressions.CovarPop< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#CovarSamp" > sqlglot.expressions.CovarSamp< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#DPipe" > sqlglot.expressions.DPipe< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Distance" > sqlglot.expressions.Distance< / a > ' > : < function Dialect.< dictcomp> .< lambda> > , < class ' < a href = "../expressions.html#Div" > sqlglot.expressions.Div< / a > &
2025-02-13 21:51:42 +01:00
< / div >
< a class = "headerlink" href = "#Presto.ANNOTATORS" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "Presto.SUPPORTS_COLUMN_JOIN_MARKS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_COLUMN_JOIN_MARKS< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.SUPPORTS_COLUMN_JOIN_MARKS" > < / a >
< div class = "docstring" > < p > Whether the old-style outer join (+) syntax is supported.< / p >
< / div >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.tokenizer_class" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > tokenizer_class< / span > =
2025-02-13 21:01:12 +01:00
< span class = "default_value" > < class ' < a href = "#Presto.Tokenizer" > Presto.Tokenizer< / a > ' > < / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.tokenizer_class" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "Presto.jsonpath_tokenizer_class" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > jsonpath_tokenizer_class< / span > =
< span class = "default_value" > < class ' sqlglot.tokens.JSONPathTokenizer' > < / span >
< / div >
< a class = "headerlink" href = "#Presto.jsonpath_tokenizer_class" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.parser_class" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > parser_class< / span > =
2025-02-13 21:01:12 +01:00
< span class = "default_value" > < class ' < a href = "#Presto.Parser" > Presto.Parser< / a > ' > < / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.parser_class" > < / a >
< / div >
< div id = "Presto.generator_class" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > generator_class< / span > =
2025-02-13 21:01:12 +01:00
< span class = "default_value" > < class ' < a href = "#Presto.Generator" > Presto.Generator< / a > ' > < / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.generator_class" > < / a >
< / div >
< div id = "Presto.TIME_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TIME_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< input id = "Presto.TIME_TRIE-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 20:58:22 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.TIME_TRIE-view-value" > < / label > < span class = "default_value" > {' %' : {' M' : {0: True}, ' c' : {0: True}, ' e' : {0: True}, ' h' : {0: True}, ' i' : {0: True}, ' s' : {0: True}, ' u' : {0: True}, ' k' : {0: True}, ' l' : {0: True}, ' T' : {0: True}, ' W' : {0: True}}}< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.TIME_TRIE" > < / a >
< / div >
< div id = "Presto.FORMAT_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > FORMAT_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< input id = "Presto.FORMAT_TRIE-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 20:58:22 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.FORMAT_TRIE-view-value" > < / label > < span class = "default_value" > {' %' : {' M' : {0: True}, ' c' : {0: True}, ' e' : {0: True}, ' h' : {0: True}, ' i' : {0: True}, ' s' : {0: True}, ' u' : {0: True}, ' k' : {0: True}, ' l' : {0: True}, ' T' : {0: True}, ' W' : {0: True}}}< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.FORMAT_TRIE" > < / a >
< / div >
< div id = "Presto.INVERSE_TIME_MAPPING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INVERSE_TIME_MAPPING< / span > < span class = "annotation" > : Dict[str, str]< / span > =
< input id = "Presto.INVERSE_TIME_MAPPING-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:52:32 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.INVERSE_TIME_MAPPING-view-value" > < / label > < span class = "default_value" > {' %B' : ' %M' , ' %-m' : ' %c' , ' %-d' : ' %e' , ' %I' : ' %h' , ' %M' : ' %i' , ' %S' : ' %s' , ' %W' : ' %u' , ' %-H' : ' %k' , ' %-I' : ' %l' , ' %H:%M:%S' : ' %T' , ' %A' : ' %W' }< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.INVERSE_TIME_MAPPING" > < / a >
< / div >
< div id = "Presto.INVERSE_TIME_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INVERSE_TIME_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< input id = "Presto.INVERSE_TIME_TRIE-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:52:32 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.INVERSE_TIME_TRIE-view-value" > < / label > < span class = "default_value" > {' %' : {' B' : {0: True}, ' -' : {' m' : {0: True}, ' d' : {0: True}, ' H' : {0: True}, ' I' : {0: True}}, ' I' : {0: True}, ' M' : {0: True}, ' S' : {0: True}, ' W' : {0: True}, ' H' : {' :' : {' %' : {' M' : {' :' : {' %' : {' S' : {0: True}}}}}}}, ' A' : {0: True}}}< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.INVERSE_TIME_TRIE" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "Presto.INVERSE_FORMAT_MAPPING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INVERSE_FORMAT_MAPPING< / span > < span class = "annotation" > : Dict[str, str]< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#Presto.INVERSE_FORMAT_MAPPING" > < / a >
< / div >
< div id = "Presto.INVERSE_FORMAT_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INVERSE_FORMAT_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#Presto.INVERSE_FORMAT_TRIE" > < / a >
2025-02-13 21:52:32 +01:00
< / div >
< div id = "Presto.INVERSE_CREATABLE_KIND_MAPPING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INVERSE_CREATABLE_KIND_MAPPING< / span > < span class = "annotation" > : dict[str, str]< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#Presto.INVERSE_CREATABLE_KIND_MAPPING" > < / a >
2025-02-13 21:04:58 +01:00
< / div >
2025-02-13 21:30:28 +01:00
< div id = "Presto.ESCAPED_SEQUENCES" class = "classattr" >
2025-02-13 21:04:58 +01:00
< div class = "attr variable" >
2025-02-13 21:30:28 +01:00
< span class = "name" > ESCAPED_SEQUENCES< / span > < span class = "annotation" > : Dict[str, str]< / span > =
2025-02-13 21:04:58 +01:00
< span class = "default_value" > {}< / span >
< / div >
2025-02-13 21:30:28 +01:00
< a class = "headerlink" href = "#Presto.ESCAPED_SEQUENCES" > < / a >
2025-02-13 21:04:58 +01:00
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.QUOTE_START" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > QUOTE_START< / span > =
< span class = "default_value" > " ' " < / span >
< / div >
< a class = "headerlink" href = "#Presto.QUOTE_START" > < / a >
< / div >
< div id = "Presto.QUOTE_END" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > QUOTE_END< / span > =
< span class = "default_value" > " ' " < / span >
< / div >
< a class = "headerlink" href = "#Presto.QUOTE_END" > < / a >
< / div >
< div id = "Presto.IDENTIFIER_START" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > IDENTIFIER_START< / span > =
< span class = "default_value" > ' " ' < / span >
< / div >
< a class = "headerlink" href = "#Presto.IDENTIFIER_START" > < / a >
< / div >
< div id = "Presto.IDENTIFIER_END" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > IDENTIFIER_END< / span > =
< span class = "default_value" > ' " ' < / span >
< / div >
< a class = "headerlink" href = "#Presto.IDENTIFIER_END" > < / a >
< / div >
< div id = "Presto.BIT_START" class = "classattr" >
< div class = "attr variable" >
2025-02-13 21:17:09 +01:00
< span class = "name" > BIT_START< / span > < span class = "annotation" > : Optional[str]< / span > =
2025-02-13 20:15:27 +01:00
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#Presto.BIT_START" > < / a >
< / div >
< div id = "Presto.BIT_END" class = "classattr" >
< div class = "attr variable" >
2025-02-13 21:17:09 +01:00
< span class = "name" > BIT_END< / span > < span class = "annotation" > : Optional[str]< / span > =
2025-02-13 20:15:27 +01:00
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#Presto.BIT_END" > < / a >
< / div >
< div id = "Presto.HEX_START" class = "classattr" >
< div class = "attr variable" >
2025-02-13 21:17:09 +01:00
< span class = "name" > HEX_START< / span > < span class = "annotation" > : Optional[str]< / span > =
2025-02-13 20:15:27 +01:00
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#Presto.HEX_START" > < / a >
< / div >
< div id = "Presto.HEX_END" class = "classattr" >
< div class = "attr variable" >
2025-02-13 21:17:09 +01:00
< span class = "name" > HEX_END< / span > < span class = "annotation" > : Optional[str]< / span > =
2025-02-13 20:15:27 +01:00
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#Presto.HEX_END" > < / a >
< / div >
< div id = "Presto.BYTE_START" class = "classattr" >
< div class = "attr variable" >
2025-02-13 21:17:09 +01:00
< span class = "name" > BYTE_START< / span > < span class = "annotation" > : Optional[str]< / span > =
2025-02-13 20:15:27 +01:00
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#Presto.BYTE_START" > < / a >
< / div >
< div id = "Presto.BYTE_END" class = "classattr" >
< div class = "attr variable" >
2025-02-13 21:17:09 +01:00
< span class = "name" > BYTE_END< / span > < span class = "annotation" > : Optional[str]< / span > =
2025-02-13 20:15:27 +01:00
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#Presto.BYTE_END" > < / a >
2025-02-13 21:19:14 +01:00
< / div >
< div id = "Presto.UNICODE_START" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > UNICODE_START< / span > < span class = "annotation" > : Optional[str]< / span > =
< span class = "default_value" > " U& ' " < / span >
< / div >
< a class = "headerlink" href = "#Presto.UNICODE_START" > < / a >
< / div >
< div id = "Presto.UNICODE_END" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > UNICODE_END< / span > < span class = "annotation" > : Optional[str]< / span > =
< span class = "default_value" > " ' " < / span >
< / div >
< a class = "headerlink" href = "#Presto.UNICODE_END" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
2025-02-13 15:23:26 +01:00
< div class = "inherited" >
< h5 > Inherited Members< / h5 >
< dl >
< div > < dt > < a href = "dialect.html#Dialect" > sqlglot.dialects.dialect.Dialect< / a > < / dt >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.__init__" class = "function" > < a href = "dialect.html#Dialect.__init__" > Dialect< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.WEEK_OFFSET" class = "variable" > < a href = "dialect.html#Dialect.WEEK_OFFSET" > WEEK_OFFSET< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.UNNEST_COLUMN_ONLY" class = "variable" > < a href = "dialect.html#Dialect.UNNEST_COLUMN_ONLY" > UNNEST_COLUMN_ONLY< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.ALIAS_POST_TABLESAMPLE" class = "variable" > < a href = "dialect.html#Dialect.ALIAS_POST_TABLESAMPLE" > ALIAS_POST_TABLESAMPLE< / a > < / dd >
< dd id = "Presto.IDENTIFIERS_CAN_START_WITH_DIGIT" class = "variable" > < a href = "dialect.html#Dialect.IDENTIFIERS_CAN_START_WITH_DIGIT" > IDENTIFIERS_CAN_START_WITH_DIGIT< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.DPIPE_IS_STRING_CONCAT" class = "variable" > < a href = "dialect.html#Dialect.DPIPE_IS_STRING_CONCAT" > DPIPE_IS_STRING_CONCAT< / a > < / dd >
2025-02-13 21:02:36 +01:00
< dd id = "Presto.SUPPORTS_USER_DEFINED_TYPES" class = "variable" > < a href = "dialect.html#Dialect.SUPPORTS_USER_DEFINED_TYPES" > SUPPORTS_USER_DEFINED_TYPES< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.COPY_PARAMS_ARE_CSV" class = "variable" > < a href = "dialect.html#Dialect.COPY_PARAMS_ARE_CSV" > COPY_PARAMS_ARE_CSV< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.NORMALIZE_FUNCTIONS" class = "variable" > < a href = "dialect.html#Dialect.NORMALIZE_FUNCTIONS" > NORMALIZE_FUNCTIONS< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.SAFE_DIVISION" class = "variable" > < a href = "dialect.html#Dialect.SAFE_DIVISION" > SAFE_DIVISION< / a > < / dd >
2025-02-13 21:17:51 +01:00
< dd id = "Presto.CONCAT_COALESCE" class = "variable" > < a href = "dialect.html#Dialect.CONCAT_COALESCE" > CONCAT_COALESCE< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "Presto.HEX_LOWERCASE" class = "variable" > < a href = "dialect.html#Dialect.HEX_LOWERCASE" > HEX_LOWERCASE< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.DATE_FORMAT" class = "variable" > < a href = "dialect.html#Dialect.DATE_FORMAT" > DATE_FORMAT< / a > < / dd >
< dd id = "Presto.DATEINT_FORMAT" class = "variable" > < a href = "dialect.html#Dialect.DATEINT_FORMAT" > DATEINT_FORMAT< / a > < / dd >
< dd id = "Presto.FORMAT_MAPPING" class = "variable" > < a href = "dialect.html#Dialect.FORMAT_MAPPING" > FORMAT_MAPPING< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.UNESCAPED_SEQUENCES" class = "variable" > < a href = "dialect.html#Dialect.UNESCAPED_SEQUENCES" > UNESCAPED_SEQUENCES< / a > < / dd >
2025-02-13 20:48:36 +01:00
< dd id = "Presto.PSEUDOCOLUMNS" class = "variable" > < a href = "dialect.html#Dialect.PSEUDOCOLUMNS" > PSEUDOCOLUMNS< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.PREFER_CTE_ALIAS_COLUMN" class = "variable" > < a href = "dialect.html#Dialect.PREFER_CTE_ALIAS_COLUMN" > PREFER_CTE_ALIAS_COLUMN< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.FORCE_EARLY_ALIAS_REF_EXPANSION" class = "variable" > < a href = "dialect.html#Dialect.FORCE_EARLY_ALIAS_REF_EXPANSION" > FORCE_EARLY_ALIAS_REF_EXPANSION< / a > < / dd >
< dd id = "Presto.EXPAND_ALIAS_REFS_EARLY_ONLY_IN_GROUP_BY" class = "variable" > < a href = "dialect.html#Dialect.EXPAND_ALIAS_REFS_EARLY_ONLY_IN_GROUP_BY" > EXPAND_ALIAS_REFS_EARLY_ONLY_IN_GROUP_BY< / a > < / dd >
2025-02-13 21:43:00 +01:00
< dd id = "Presto.SUPPORTS_ORDER_BY_ALL" class = "variable" > < a href = "dialect.html#Dialect.SUPPORTS_ORDER_BY_ALL" > SUPPORTS_ORDER_BY_ALL< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "Presto.HAS_DISTINCT_ARRAY_CONSTRUCTORS" class = "variable" > < a href = "dialect.html#Dialect.HAS_DISTINCT_ARRAY_CONSTRUCTORS" > HAS_DISTINCT_ARRAY_CONSTRUCTORS< / a > < / dd >
< dd id = "Presto.SUPPORTS_FIXED_SIZE_ARRAYS" class = "variable" > < a href = "dialect.html#Dialect.SUPPORTS_FIXED_SIZE_ARRAYS" > SUPPORTS_FIXED_SIZE_ARRAYS< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "Presto.STRICT_JSON_PATH_SYNTAX" class = "variable" > < a href = "dialect.html#Dialect.STRICT_JSON_PATH_SYNTAX" > STRICT_JSON_PATH_SYNTAX< / a > < / dd >
< dd id = "Presto.ON_CONDITION_EMPTY_BEFORE_ERROR" class = "variable" > < a href = "dialect.html#Dialect.ON_CONDITION_EMPTY_BEFORE_ERROR" > ON_CONDITION_EMPTY_BEFORE_ERROR< / a > < / dd >
< dd id = "Presto.ARRAY_AGG_INCLUDES_NULLS" class = "variable" > < a href = "dialect.html#Dialect.ARRAY_AGG_INCLUDES_NULLS" > ARRAY_AGG_INCLUDES_NULLS< / a > < / dd >
< dd id = "Presto.REGEXP_EXTRACT_DEFAULT_GROUP" class = "variable" > < a href = "dialect.html#Dialect.REGEXP_EXTRACT_DEFAULT_GROUP" > REGEXP_EXTRACT_DEFAULT_GROUP< / a > < / dd >
< dd id = "Presto.SET_OP_DISTINCT_BY_DEFAULT" class = "variable" > < a href = "dialect.html#Dialect.SET_OP_DISTINCT_BY_DEFAULT" > SET_OP_DISTINCT_BY_DEFAULT< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "Presto.CREATABLE_KIND_MAPPING" class = "variable" > < a href = "dialect.html#Dialect.CREATABLE_KIND_MAPPING" > CREATABLE_KIND_MAPPING< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.DATE_PART_MAPPING" class = "variable" > < a href = "dialect.html#Dialect.DATE_PART_MAPPING" > DATE_PART_MAPPING< / a > < / dd >
2025-02-13 21:51:42 +01:00
< dd id = "Presto.TYPE_TO_EXPRESSIONS" class = "variable" > < a href = "dialect.html#Dialect.TYPE_TO_EXPRESSIONS" > TYPE_TO_EXPRESSIONS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.get_or_raise" class = "function" > < a href = "dialect.html#Dialect.get_or_raise" > get_or_raise< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.format_time" class = "function" > < a href = "dialect.html#Dialect.format_time" > format_time< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.settings" class = "variable" > < a href = "dialect.html#Dialect.settings" > settings< / a > < / dd >
2025-02-13 20:04:59 +01:00
< dd id = "Presto.normalize_identifier" class = "function" > < a href = "dialect.html#Dialect.normalize_identifier" > normalize_identifier< / a > < / dd >
< dd id = "Presto.case_sensitive" class = "function" > < a href = "dialect.html#Dialect.case_sensitive" > case_sensitive< / a > < / dd >
< dd id = "Presto.can_identify" class = "function" > < a href = "dialect.html#Dialect.can_identify" > can_identify< / a > < / dd >
< dd id = "Presto.quote_identifier" class = "function" > < a href = "dialect.html#Dialect.quote_identifier" > quote_identifier< / a > < / dd >
2025-02-13 21:20:36 +01:00
< dd id = "Presto.to_json_path" class = "function" > < a href = "dialect.html#Dialect.to_json_path" > to_json_path< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.parse" class = "function" > < a href = "dialect.html#Dialect.parse" > parse< / a > < / dd >
< dd id = "Presto.parse_into" class = "function" > < a href = "dialect.html#Dialect.parse_into" > parse_into< / a > < / dd >
< dd id = "Presto.generate" class = "function" > < a href = "dialect.html#Dialect.generate" > generate< / a > < / dd >
< dd id = "Presto.transpile" class = "function" > < a href = "dialect.html#Dialect.transpile" > transpile< / a > < / dd >
2025-02-13 15:46:19 +01:00
< dd id = "Presto.tokenize" class = "function" > < a href = "dialect.html#Dialect.tokenize" > tokenize< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.tokenizer" class = "variable" > < a href = "dialect.html#Dialect.tokenizer" > tokenizer< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.jsonpath_tokenizer" class = "variable" > < a href = "dialect.html#Dialect.jsonpath_tokenizer" > jsonpath_tokenizer< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.parser" class = "function" > < a href = "dialect.html#Dialect.parser" > parser< / a > < / dd >
< dd id = "Presto.generator" class = "function" > < a href = "dialect.html#Dialect.generator" > generator< / a > < / dd >
< / div >
< / dl >
< / div >
< / section >
< section id = "Presto.Tokenizer" >
< input id = "Presto.Tokenizer-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr class" >
< span class = "def" > class< / span >
< span class = "name" > Presto.Tokenizer< / span > < wbr > (< span class = "base" > < a href = "../tokens.html#Tokenizer" > sqlglot.tokens.Tokenizer< / a > < / span > ):
< label class = "view-source-button" for = "Presto.Tokenizer-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Tokenizer" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Tokenizer-225" > < a href = "#Presto.Tokenizer-225" > < span class = "linenos" > 225< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Tokenizer< / span > < span class = "p" > (< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Tokenizer-226" > < a href = "#Presto.Tokenizer-226" > < span class = "linenos" > 226< / span > < / a > < span class = "n" > UNICODE_STRINGS< / span > < span class = "o" > =< / span > < span class = "p" > [< / span >
< / span > < span id = "Presto.Tokenizer-227" > < a href = "#Presto.Tokenizer-227" > < span class = "linenos" > 227< / span > < / a > < span class = "p" > (< / span > < span class = "n" > prefix< / span > < span class = "o" > +< / span > < span class = "n" > q< / span > < span class = "p" > ,< / span > < span class = "n" > q< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Tokenizer-228" > < a href = "#Presto.Tokenizer-228" > < span class = "linenos" > 228< / span > < / a > < span class = "k" > for< / span > < span class = "n" > q< / span > < span class = "ow" > in< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ],< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "o" > .< / span > < span class = "n" > QUOTES< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Tokenizer-229" > < a href = "#Presto.Tokenizer-229" > < span class = "linenos" > 229< / span > < / a > < span class = "k" > for< / span > < span class = "n" > prefix< / span > < span class = "ow" > in< / span > < span class = "p" > (< / span > < span class = "s2" > " U& " < / span > < span class = "p" > ,< / span > < span class = "s2" > " u& " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Tokenizer-230" > < a href = "#Presto.Tokenizer-230" > < span class = "linenos" > 230< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Tokenizer-231" > < a href = "#Presto.Tokenizer-231" > < span class = "linenos" > 231< / span > < / a >
< / span > < span id = "Presto.Tokenizer-232" > < a href = "#Presto.Tokenizer-232" > < span class = "linenos" > 232< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto.Tokenizer-233" > < a href = "#Presto.Tokenizer-233" > < span class = "linenos" > 233< / span > < / a > < span class = "o" > **< / span > < span class = "n" > tokens< / span > < span class = "o" > .< / span > < span class = "n" > Tokenizer< / span > < span class = "o" > .< / span > < span class = "n" > KEYWORDS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-234" > < a href = "#Presto.Tokenizer-234" > < span class = "linenos" > 234< / span > < / a > < span class = "s2" > " START" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BEGIN< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-235" > < a href = "#Presto.Tokenizer-235" > < span class = "linenos" > 235< / span > < / a > < span class = "s2" > " MATCH_RECOGNIZE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > MATCH_RECOGNIZE< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-236" > < a href = "#Presto.Tokenizer-236" > < span class = "linenos" > 236< / span > < / a > < span class = "s2" > " ROW" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > STRUCT< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-237" > < a href = "#Presto.Tokenizer-237" > < span class = "linenos" > 237< / span > < / a > < span class = "s2" > " IPADDRESS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > IPADDRESS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-238" > < a href = "#Presto.Tokenizer-238" > < span class = "linenos" > 238< / span > < / a > < span class = "s2" > " IPPREFIX" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > IPPREFIX< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-239" > < a href = "#Presto.Tokenizer-239" > < span class = "linenos" > 239< / span > < / a > < span class = "s2" > " TDIGEST" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TDIGEST< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-240" > < a href = "#Presto.Tokenizer-240" > < span class = "linenos" > 240< / span > < / a > < span class = "s2" > " HYPERLOGLOG" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > HLLSKETCH< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Tokenizer-241" > < a href = "#Presto.Tokenizer-241" > < span class = "linenos" > 241< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto.Tokenizer-242" > < a href = "#Presto.Tokenizer-242" > < span class = "linenos" > 242< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " /*+" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Tokenizer-243" > < a href = "#Presto.Tokenizer-243" > < span class = "linenos" > 243< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " QUALIFY" < / span > < span class = "p" > )< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
2025-02-13 21:19:14 +01:00
< div id = "Presto.Tokenizer.UNICODE_STRINGS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > UNICODE_STRINGS< / span > =
< span class = "default_value" > [(" U& ' " , " ' " ), (" u& ' " , " ' " )]< / span >
< / div >
< a class = "headerlink" href = "#Presto.Tokenizer.UNICODE_STRINGS" > < / a >
< / div >
2025-02-13 20:15:27 +01:00
< div id = "Presto.Tokenizer.KEYWORDS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > KEYWORDS< / span > =
< input id = "Presto.Tokenizer.KEYWORDS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:56:19 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Tokenizer.KEYWORDS-view-value" > < / label > < span class = "default_value" > {' {%' : < TokenType.BLOCK_START: ' BLOCK_START' > , ' {%+' : < TokenType.BLOCK_START: ' BLOCK_START' > , ' {%-' : < TokenType.BLOCK_START: ' BLOCK_START' > , ' %}' : < TokenType.BLOCK_END: ' BLOCK_END' > , ' +%}' : < TokenType.BLOCK_END: ' BLOCK_END' > , ' -%}' : < TokenType.BLOCK_END: ' BLOCK_END' > , ' {{+' : < TokenType.BLOCK_START: ' BLOCK_START' > , ' {{-' : < TokenType.BLOCK_START: ' BLOCK_START' > , ' +}}' : < TokenType.BLOCK_END: ' BLOCK_END' > , ' -}}' : < TokenType.BLOCK_END: ' BLOCK_END' > , ' ==' : < TokenType.EQ: ' EQ' > , ' ::' : < TokenType.DCOLON: ' DCOLON' > , ' ||' : < TokenType.DPIPE: ' DPIPE' > , ' > =' : < TokenType.GTE: ' GTE' > , ' < =' : < TokenType.LTE: ' LTE' > , ' < > ' : < TokenType.NEQ: ' NEQ' > , ' !=' : < TokenType.NEQ: ' NEQ' > , ' :=' : < TokenType.COLON_EQ: ' COLON_EQ' > , ' < => ' : < TokenType.NULLSAFE_EQ: ' NULLSAFE_EQ' > , ' -> ' : < TokenType.ARROW: ' ARROW' > , ' -> > ' : < TokenType.DARROW: ' DARROW' > , ' => ' : < TokenType.FARROW: ' FARROW' > , ' #> ' : < TokenType.HASH_ARROW: ' HASH_ARROW' > , ' #> > ' : < TokenType.DHASH_ARROW: ' DHASH_ARROW' > , ' < -> ' : < TokenType.LR_ARROW: ' LR_ARROW' > , ' & & ' : < TokenType.DAMP: ' DAMP' > , ' ??' : < TokenType.DQMARK: ' DQMARK' > , ' ~~~' : < TokenType.GLOB: ' GLOB' > , ' ~~' : < TokenType.LIKE: ' LIKE' > , ' ~~*' : < TokenType.ILIKE: ' ILIKE' > , ' ~*' : < TokenType.IRLIKE: ' IRLIKE' > , ' ALL' : < TokenType.ALL: ' ALL' > , ' ALWAYS' : < TokenType.ALWAYS: ' ALWAYS' > , ' AND' : < TokenType.AND: ' AND' > , ' ANTI' : < TokenType.ANTI: ' ANTI' > , ' ANY' : < TokenType.ANY: ' ANY' > , ' ASC' : < TokenType.ASC: ' ASC' > , ' AS' : < TokenType.ALIAS: ' ALIAS' > , ' ASOF' : < TokenType.ASOF: ' ASOF' > , ' AUTOINCREMENT' : < TokenType.AUTO_INCREMENT: ' AUTO_INCREMENT' > , ' AUTO_INCREMENT' : < TokenType.AUTO_INCREMENT: ' AUTO_INCREMENT' > , ' BEGIN' : < TokenType.BEGIN: ' BEGIN' > , ' BETWEEN' : < TokenType.BETWEEN: ' BETWEEN' > , ' CACHE' : < TokenType.CACHE: ' CACHE' > , ' UNCACHE' : < TokenType.UNCACHE: ' UNCACHE' > , ' CASE' : < TokenType.CASE: ' CASE' > , ' CHARACTER SET' : < TokenType.CHARACTER_SET: ' CHARACTER_SET' > , ' CLUSTER BY' : < TokenType.CLUSTER_BY: ' CLUSTER_BY' > , ' COLLATE' : < TokenType.COLLATE: ' COLLATE' > , ' COLUMN' : < TokenType.COLUMN: ' COLUMN' > , ' COMMIT' : < TokenType.COMMIT: ' COMMIT' > , ' CONNECT BY' : < TokenType.CONNECT_BY: ' CONNECT_BY' > , ' CONSTRAINT' : < TokenType.CONSTRAINT: ' CONSTRAINT' > , ' COPY' : < TokenType.COPY: ' COPY' > , ' CREATE' : < TokenType.CREATE: ' CREATE' > , ' CROSS' : < TokenType.CROSS: ' CROSS' > , ' CUBE' : < TokenType.CUBE: ' CUBE' > , ' CURRENT_DATE' : < TokenType.CURRENT_DATE: ' CURRENT_DATE' > , ' CURRENT_TIME' : < TokenType.CURRENT_TIME: ' CURRENT_TIME' > , ' CURRENT_TIMESTAMP' : < TokenType.CURRENT_TIMESTAMP: ' CURRENT_TIMESTAMP' > , ' CURRENT_USER' : < TokenType.CURRENT_USER: ' CURRENT_USER' > , ' DATABASE' : < TokenType.DATABASE: & #39
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Tokenizer.KEYWORDS" > < / a >
< / div >
2025-02-13 15:23:26 +01:00
< div class = "inherited" >
< h5 > Inherited Members< / h5 >
< dl >
< div > < dt > < a href = "../tokens.html#Tokenizer" > sqlglot.tokens.Tokenizer< / a > < / dt >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Tokenizer.__init__" class = "function" > < a href = "../tokens.html#Tokenizer.__init__" > Tokenizer< / a > < / dd >
< dd id = "Presto.Tokenizer.SINGLE_TOKENS" class = "variable" > < a href = "../tokens.html#Tokenizer.SINGLE_TOKENS" > SINGLE_TOKENS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Tokenizer.BIT_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.BIT_STRINGS" > BIT_STRINGS< / a > < / dd >
< dd id = "Presto.Tokenizer.BYTE_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.BYTE_STRINGS" > BYTE_STRINGS< / a > < / dd >
< dd id = "Presto.Tokenizer.HEX_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.HEX_STRINGS" > HEX_STRINGS< / a > < / dd >
< dd id = "Presto.Tokenizer.RAW_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.RAW_STRINGS" > RAW_STRINGS< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Tokenizer.HEREDOC_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.HEREDOC_STRINGS" > HEREDOC_STRINGS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Tokenizer.IDENTIFIERS" class = "variable" > < a href = "../tokens.html#Tokenizer.IDENTIFIERS" > IDENTIFIERS< / a > < / dd >
< dd id = "Presto.Tokenizer.QUOTES" class = "variable" > < a href = "../tokens.html#Tokenizer.QUOTES" > QUOTES< / a > < / dd >
< dd id = "Presto.Tokenizer.STRING_ESCAPES" class = "variable" > < a href = "../tokens.html#Tokenizer.STRING_ESCAPES" > STRING_ESCAPES< / a > < / dd >
< dd id = "Presto.Tokenizer.VAR_SINGLE_TOKENS" class = "variable" > < a href = "../tokens.html#Tokenizer.VAR_SINGLE_TOKENS" > VAR_SINGLE_TOKENS< / a > < / dd >
2025-02-13 21:56:19 +01:00
< dd id = "Presto.Tokenizer.IDENTIFIER_ESCAPES" class = "variable" > < a href = "../tokens.html#Tokenizer.IDENTIFIER_ESCAPES" > IDENTIFIER_ESCAPES< / a > < / dd >
2025-02-13 21:21:45 +01:00
< dd id = "Presto.Tokenizer.HEREDOC_TAG_IS_IDENTIFIER" class = "variable" > < a href = "../tokens.html#Tokenizer.HEREDOC_TAG_IS_IDENTIFIER" > HEREDOC_TAG_IS_IDENTIFIER< / a > < / dd >
< dd id = "Presto.Tokenizer.HEREDOC_STRING_ALTERNATIVE" class = "variable" > < a href = "../tokens.html#Tokenizer.HEREDOC_STRING_ALTERNATIVE" > HEREDOC_STRING_ALTERNATIVE< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Tokenizer.STRING_ESCAPES_ALLOWED_IN_RAW_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.STRING_ESCAPES_ALLOWED_IN_RAW_STRINGS" > STRING_ESCAPES_ALLOWED_IN_RAW_STRINGS< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "Presto.Tokenizer.NESTED_COMMENTS" class = "variable" > < a href = "../tokens.html#Tokenizer.NESTED_COMMENTS" > NESTED_COMMENTS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Tokenizer.WHITE_SPACE" class = "variable" > < a href = "../tokens.html#Tokenizer.WHITE_SPACE" > WHITE_SPACE< / a > < / dd >
< dd id = "Presto.Tokenizer.COMMANDS" class = "variable" > < a href = "../tokens.html#Tokenizer.COMMANDS" > COMMANDS< / a > < / dd >
< dd id = "Presto.Tokenizer.COMMAND_PREFIX_TOKENS" class = "variable" > < a href = "../tokens.html#Tokenizer.COMMAND_PREFIX_TOKENS" > COMMAND_PREFIX_TOKENS< / a > < / dd >
< dd id = "Presto.Tokenizer.NUMERIC_LITERALS" class = "variable" > < a href = "../tokens.html#Tokenizer.NUMERIC_LITERALS" > NUMERIC_LITERALS< / a > < / dd >
< dd id = "Presto.Tokenizer.COMMENTS" class = "variable" > < a href = "../tokens.html#Tokenizer.COMMENTS" > COMMENTS< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Tokenizer.dialect" class = "variable" > < a href = "../tokens.html#Tokenizer.dialect" > dialect< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Tokenizer.reset" class = "function" > < a href = "../tokens.html#Tokenizer.reset" > reset< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Tokenizer.tokenize" class = "function" > < a href = "../tokens.html#Tokenizer.tokenize" > tokenize< / a > < / dd >
2025-02-13 21:17:51 +01:00
< dd id = "Presto.Tokenizer.tokenize_rs" class = "function" > < a href = "../tokens.html#Tokenizer.tokenize_rs" > tokenize_rs< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Tokenizer.size" class = "variable" > < a href = "../tokens.html#Tokenizer.size" > size< / a > < / dd >
< dd id = "Presto.Tokenizer.sql" class = "variable" > < a href = "../tokens.html#Tokenizer.sql" > sql< / a > < / dd >
< dd id = "Presto.Tokenizer.tokens" class = "variable" > < a href = "../tokens.html#Tokenizer.tokens" > tokens< / a > < / dd >
2025-02-13 15:23:26 +01:00
< / div >
< / dl >
< / div >
< / section >
< section id = "Presto.Parser" >
< input id = "Presto.Parser-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr class" >
< span class = "def" > class< / span >
< span class = "name" > Presto.Parser< / span > < wbr > (< span class = "base" > < a href = "../parser.html#Parser" > sqlglot.parser.Parser< / a > < / span > ):
< label class = "view-source-button" for = "Presto.Parser-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Parser" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Parser-245" > < a href = "#Presto.Parser-245" > < span class = "linenos" > 245< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Parser< / span > < span class = "p" > (< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Parser-246" > < a href = "#Presto.Parser-246" > < span class = "linenos" > 246< / span > < / a > < span class = "n" > VALUES_FOLLOWED_BY_PAREN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Parser-247" > < a href = "#Presto.Parser-247" > < span class = "linenos" > 247< / span > < / a >
< / span > < span id = "Presto.Parser-248" > < a href = "#Presto.Parser-248" > < span class = "linenos" > 248< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto.Parser-249" > < a href = "#Presto.Parser-249" > < span class = "linenos" > 249< / span > < / a > < span class = "o" > **< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "o" > .< / span > < span class = "n" > FUNCTIONS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-250" > < a href = "#Presto.Parser-250" > < span class = "linenos" > 250< / span > < / a > < span class = "s2" > " ARBITRARY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AnyValue< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-251" > < a href = "#Presto.Parser-251" > < span class = "linenos" > 251< / span > < / a > < span class = "s2" > " APPROX_DISTINCT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxDistinct< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-252" > < a href = "#Presto.Parser-252" > < span class = "linenos" > 252< / span > < / a > < span class = "s2" > " APPROX_PERCENTILE" < / span > < span class = "p" > :< / span > < span class = "n" > _build_approx_percentile< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-253" > < a href = "#Presto.Parser-253" > < span class = "linenos" > 253< / span > < / a > < span class = "s2" > " BITWISE_AND" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseAnd< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-254" > < a href = "#Presto.Parser-254" > < span class = "linenos" > 254< / span > < / a > < span class = "s2" > " BITWISE_NOT" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseNot< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto.Parser-255" > < a href = "#Presto.Parser-255" > < span class = "linenos" > 255< / span > < / a > < span class = "s2" > " BITWISE_OR" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseOr< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-256" > < a href = "#Presto.Parser-256" > < span class = "linenos" > 256< / span > < / a > < span class = "s2" > " BITWISE_XOR" < / span > < span class = "p" > :< / span > < span class = "n" > binary_from_function< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-257" > < a href = "#Presto.Parser-257" > < span class = "linenos" > 257< / span > < / a > < span class = "s2" > " CARDINALITY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySize< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-258" > < a href = "#Presto.Parser-258" > < span class = "linenos" > 258< / span > < / a > < span class = "s2" > " CONTAINS" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayContains< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-259" > < a href = "#Presto.Parser-259" > < span class = "linenos" > 259< / span > < / a > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateAdd< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Parser-260" > < a href = "#Presto.Parser-260" > < span class = "linenos" > 260< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Parser-261" > < a href = "#Presto.Parser-261" > < span class = "linenos" > 261< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-262" > < a href = "#Presto.Parser-262" > < span class = "linenos" > 262< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Parser-263" > < a href = "#Presto.Parser-263" > < span class = "linenos" > 263< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > ),< / span > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Parser-264" > < a href = "#Presto.Parser-264" > < span class = "linenos" > 264< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-265" > < a href = "#Presto.Parser-265" > < span class = "linenos" > 265< / span > < / a > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > :< / span > < span class = "n" > build_formatted_time< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > ,< / span > < span class = "s2" > " presto" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-266" > < a href = "#Presto.Parser-266" > < span class = "linenos" > 266< / span > < / a > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > :< / span > < span class = "n" > build_formatted_time< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToTime< / span > < span class = "p" > ,< / span > < span class = "s2" > " presto" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-267" > < a href = "#Presto.Parser-267" > < span class = "linenos" > 267< / span > < / a > < span class = "s2" > " DATE_TRUNC" < / span > < span class = "p" > :< / span > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-268" > < a href = "#Presto.Parser-268" > < span class = "linenos" > 268< / span > < / a > < span class = "s2" > " DAY_OF_WEEK" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeekIso< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-269" > < a href = "#Presto.Parser-269" > < span class = "linenos" > 269< / span > < / a > < span class = "s2" > " ELEMENT_AT" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Bracket< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Parser-270" > < a href = "#Presto.Parser-270" > < span class = "linenos" > 270< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > )],< / span > < span class = "n" > offset< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span > < span class = "p" > ,< / span > < span class = "n" > safe< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto.Parser-271" > < a href = "#Presto.Parser-271" > < span class = "linenos" > 271< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-272" > < a href = "#Presto.Parser-272" > < span class = "linenos" > 272< / span > < / a > < span class = "s2" > " FROM_HEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Unhex< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-273" > < a href = "#Presto.Parser-273" > < span class = "linenos" > 273< / span > < / a > < span class = "s2" > " FROM_UNIXTIME" < / span > < span class = "p" > :< / span > < span class = "n" > _build_from_unixtime< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-274" > < a href = "#Presto.Parser-274" > < span class = "linenos" > 274< / span > < / a > < span class = "s2" > " FROM_UTF8" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Decode< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Parser-275" > < a href = "#Presto.Parser-275" > < span class = "linenos" > 275< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Parser-276" > < a href = "#Presto.Parser-276" > < span class = "linenos" > 276< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-277" > < a href = "#Presto.Parser-277" > < span class = "linenos" > 277< / span > < / a > < span class = "s2" > " LEVENSHTEIN_DISTANCE" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Levenshtein< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-278" > < a href = "#Presto.Parser-278" > < span class = "linenos" > 278< / span > < / a > < span class = "s2" > " NOW" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTimestamp< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-279" > < a href = "#Presto.Parser-279" > < span class = "linenos" > 279< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtract< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-280" > < a href = "#Presto.Parser-280" > < span class = "linenos" > 280< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT_ALL" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtractAll< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-281" > < a href = "#Presto.Parser-281" > < span class = "linenos" > 281< / span > < / a > < span class = "s2" > " REGEXP_REPLACE" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpReplace< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Parser-282" > < a href = "#Presto.Parser-282" > < span class = "linenos" > 282< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-283" > < a href = "#Presto.Parser-283" > < span class = "linenos" > 283< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-284" > < a href = "#Presto.Parser-284" > < span class = "linenos" > 284< / span > < / a > < span class = "n" > replacement< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " " < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-285" > < a href = "#Presto.Parser-285" > < span class = "linenos" > 285< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-286" > < a href = "#Presto.Parser-286" > < span class = "linenos" > 286< / span > < / a > < span class = "s2" > " ROW" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-287" > < a href = "#Presto.Parser-287" > < span class = "linenos" > 287< / span > < / a > < span class = "s2" > " SEQUENCE" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-288" > < a href = "#Presto.Parser-288" > < span class = "linenos" > 288< / span > < / a > < span class = "s2" > " SET_AGG" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayUniqueAgg< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-289" > < a href = "#Presto.Parser-289" > < span class = "linenos" > 289< / span > < / a > < span class = "s2" > " SPLIT_TO_MAP" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToMap< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-290" > < a href = "#Presto.Parser-290" > < span class = "linenos" > 290< / span > < / a > < span class = "s2" > " STRPOS" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Parser-291" > < a href = "#Presto.Parser-291" > < span class = "linenos" > 291< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > substr< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span > < span class = "n" > instance< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 2< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Parser-292" > < a href = "#Presto.Parser-292" > < span class = "linenos" > 292< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-293" > < a href = "#Presto.Parser-293" > < span class = "linenos" > 293< / span > < / a > < span class = "s2" > " TO_CHAR" < / span > < span class = "p" > :< / span > < span class = "n" > _build_to_char< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-294" > < a href = "#Presto.Parser-294" > < span class = "linenos" > 294< / span > < / a > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToUnix< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-295" > < a href = "#Presto.Parser-295" > < span class = "linenos" > 295< / span > < / a > < span class = "s2" > " TO_UTF8" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Parser-296" > < a href = "#Presto.Parser-296" > < span class = "linenos" > 296< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Parser-297" > < a href = "#Presto.Parser-297" > < span class = "linenos" > 297< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Parser-298" > < a href = "#Presto.Parser-298" > < span class = "linenos" > 298< / span > < / a > < span class = "s2" > " MD5" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Parser-299" > < a href = "#Presto.Parser-299" > < span class = "linenos" > 299< / span > < / a > < span class = "s2" > " SHA256" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > length< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > number< / span > < span class = "p" > (< / span > < span class = "mi" > 256< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto.Parser-300" > < a href = "#Presto.Parser-300" > < span class = "linenos" > 300< / span > < / a > < span class = "s2" > " SHA512" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "n" > args< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > seq_get< / span > < span class = "p" > (< / span > < span class = "n" > args< / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span > < span class = "n" > length< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > number< / span > < span class = "p" > (< / span > < span class = "mi" > 512< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto.Parser-301" > < a href = "#Presto.Parser-301" > < span class = "linenos" > 301< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto.Parser-302" > < a href = "#Presto.Parser-302" > < span class = "linenos" > 302< / span > < / a >
< / span > < span id = "Presto.Parser-303" > < a href = "#Presto.Parser-303" > < span class = "linenos" > 303< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > =< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > Parser< / span > < span class = "o" > .< / span > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > copy< / span > < span class = "p" > ()< / span >
< / span > < span id = "Presto.Parser-304" > < a href = "#Presto.Parser-304" > < span class = "linenos" > 304< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " TRIM" < / span > < span class = "p" > )< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
2025-02-13 16:00:51 +01:00
< div class = "docstring" > < p > Parser consumes a list of tokens produced by the Tokenizer and produces a parsed syntax tree.< / p >
2025-02-13 15:23:26 +01:00
< h6 id = "arguments" > Arguments:< / h6 >
< ul >
2025-02-13 16:00:51 +01:00
< li > < strong > error_level:< / strong > The desired error level.
2025-02-13 15:58:40 +01:00
Default: ErrorLevel.IMMEDIATE< / li >
2025-02-13 21:29:39 +01:00
< li > < strong > error_message_context:< / strong > The amount of context to capture from a query string when displaying
the error message (in number of characters).
2025-02-13 16:00:51 +01:00
Default: 100< / li >
2025-02-13 15:23:26 +01:00
< li > < strong > max_errors:< / strong > Maximum number of error messages to include in a raised ParseError.
This is only relevant if error_level is ErrorLevel.RAISE.
Default: 3< / li >
< / ul >
< / div >
2025-02-13 21:28:36 +01:00
< div id = "Presto.Parser.VALUES_FOLLOWED_BY_PAREN" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > VALUES_FOLLOWED_BY_PAREN< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Parser.VALUES_FOLLOWED_BY_PAREN" > < / a >
< / div >
2025-02-13 20:15:27 +01:00
< div id = "Presto.Parser.FUNCTIONS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > FUNCTIONS< / span > =
< input id = "Presto.Parser.FUNCTIONS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:57:20 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Parser.FUNCTIONS-view-value" > < / label > < span class = "default_value" > {' ABS' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#Abs" > sqlglot.expressions.Abs< / a > ' > > , ' ADD_MONTHS' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#AddMonths" > sqlglot.expressions.AddMonths< / a > ' > > , ' ANONYMOUS_AGG_FUNC' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#AnonymousAggFunc" > sqlglot.expressions.AnonymousAggFunc< / a > ' > > , ' ANY_VALUE' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#AnyValue" > sqlglot.expressions.AnyValue< / a > ' > > , ' APPLY' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#Apply" > sqlglot.expressions.Apply< / a > ' > > , ' APPROX_DISTINCT' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ApproxDistinct" > sqlglot.expressions.ApproxDistinct< / a > ' > > , ' APPROX_COUNT_DISTINCT' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ApproxDistinct" > sqlglot.expressions.ApproxDistinct< / a > ' > > , ' APPROX_QUANTILE' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ApproxQuantile" > sqlglot.expressions.ApproxQuantile< / a > ' > > , ' APPROX_TOP_K' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ApproxTopK" > sqlglot.expressions.ApproxTopK< / a > ' > > , ' ARG_MAX' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArgMax" > sqlglot.expressions.ArgMax< / a > ' > > , ' ARGMAX' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArgMax" > sqlglot.expressions.ArgMax< / a > ' > > , ' MAX_BY' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArgMax" > sqlglot.expressions.ArgMax< / a > ' > > , ' ARG_MIN' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArgMin" > sqlglot.expressions.ArgMin< / a > ' > > , ' ARGMIN' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArgMin" > sqlglot.expressions.ArgMin< / a > ' > > , ' MIN_BY' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArgMin" > sqlglot.expressions.ArgMin< / a > ' > > , ' ARRAY' : < function Parser.< lambda> > , ' ARRAY_AGG' : < function Parser.< lambda> > , ' ARRAY_ALL' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayAll" > sqlglot.expressions.ArrayAll< / a > ' > > , ' ARRAY_ANY' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayAny" > sqlglot.expressions.ArrayAny< / a > ' > > , ' ARRAY_CONCAT' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayConcat" > sqlglot.expressions.ArrayConcat< / a > ' > > , ' ARRAY_CAT' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayConcat" > sqlglot.expressions.ArrayConcat< / a > ' > > , ' ARRAY_CONSTRUCT_COMPACT' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayConstructCompact" > sqlglot.expressions.ArrayConstructCompact< / a > ' > > , ' ARRAY_CONTAINS' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayContains" > sqlglot.expressions.ArrayContains< / a > ' > > , ' ARRAY_HAS' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayContains" > sqlglot.expressions.ArrayContains< / a > ' > > , ' ARRAY_CONTAINS_ALL' : < bound method Func.from_arg_list of < class ' < a href = "../expressions.html#ArrayContainsAll" > sqlglot.expressions.ArrayContainsAll< / a > ' > > , '
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Parser.FUNCTIONS" > < / a >
< / div >
< div id = "Presto.Parser.FUNCTION_PARSERS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > FUNCTION_PARSERS< / span > =
< input id = "Presto.Parser.FUNCTION_PARSERS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:55:40 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Parser.FUNCTION_PARSERS-view-value" > < / label > < span class = "default_value" > {' CAST' : < function Parser.< lambda> > , ' CONVERT' : < function Parser.< lambda> > , ' DECODE' : < function Parser.< lambda> > , ' EXTRACT' : < function Parser.< lambda> > , ' GAP_FILL' : < function Parser.< lambda> > , ' JSON_OBJECT' : < function Parser.< lambda> > , ' JSON_OBJECTAGG' : < function Parser.< lambda> > , ' JSON_TABLE' : < function Parser.< lambda> > , ' MATCH' : < function Parser.< lambda> > , ' NORMALIZE' : < function Parser.< lambda> > , ' OPENJSON' : < function Parser.< lambda> > , ' OVERLAY' : < function Parser.< lambda> > , ' POSITION' : < function Parser.< lambda> > , ' PREDICT' : < function Parser.< lambda> > , ' SAFE_CAST' : < function Parser.< lambda> > , ' STRING_AGG' : < function Parser.< lambda> > , ' SUBSTRING' : < function Parser.< lambda> > , ' TRY_CAST' : < function Parser.< lambda> > , ' TRY_CONVERT' : < function Parser.< lambda> > }< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Parser.FUNCTION_PARSERS" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "Presto.Parser.ID_VAR_TOKENS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > ID_VAR_TOKENS< / span > =
< input id = "Presto.Parser.ID_VAR_TOKENS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:57:37 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Parser.ID_VAR_TOKENS-view-value" > < / label > < span class = "default_value" > {< TokenType.DECIMAL32: ' DECIMAL32' > , < TokenType.TIMETZ: ' TIMETZ' > , < TokenType.VARBINARY: ' VARBINARY' > , < TokenType.CURRENT_TIME: ' CURRENT_TIME' > , < TokenType.RANGE: ' RANGE' > , < TokenType.NULL: ' NULL' > , < TokenType.COLUMN: ' COLUMN' > , < TokenType.FUNCTION: ' FUNCTION' > , < TokenType.NAME: ' NAME' > , < TokenType.NULLABLE: ' NULLABLE' > , < TokenType.WAREHOUSE: ' WAREHOUSE' > , < TokenType.SOME: ' SOME' > , < TokenType.TSRANGE: ' TSRANGE' > , < TokenType.HSTORE: ' HSTORE' > , < TokenType.SET: ' SET' > , < TokenType.CHAR: ' CHAR' > , < TokenType.OVERLAPS: ' OVERLAPS' > , < TokenType.COMMAND: ' COMMAND' > , < TokenType.TSTZRANGE: ' TSTZRANGE' > , < TokenType.ARRAY: ' ARRAY' > , < TokenType.INT4MULTIRANGE: ' INT4MULTIRANGE' > , < TokenType.ORDINALITY: ' ORDINALITY' > , < TokenType.ROWS: ' ROWS' > , < TokenType.RENAME: ' RENAME' > , < TokenType.TRUE: ' TRUE' > , < TokenType.IPADDRESS: ' IPADDRESS' > , < TokenType.CURRENT_TIMESTAMP: ' CURRENT_TIMESTAMP' > , < TokenType.RIGHT: ' RIGHT' > , < TokenType.LOAD: ' LOAD' > , < TokenType.BOOLEAN: ' BOOLEAN' > , < TokenType.ASC: ' ASC' > , < TokenType.DICTIONARY: ' DICTIONARY' > , < TokenType.DECIMAL: ' DECIMAL' > , < TokenType.ROLLUP: ' ROLLUP' > , < TokenType.STREAMLIT: ' STREAMLIT' > , < TokenType.TSTZMULTIRANGE: ' TSTZMULTIRANGE' > , < TokenType.BEGIN: ' BEGIN' > , < TokenType.ISNULL: ' ISNULL' > , < TokenType.CURRENT_USER: ' CURRENT_USER' > , < TokenType.LOWCARDINALITY: ' LOWCARDINALITY' > , < TokenType.CURRENT_DATE: ' CURRENT_DATE' > , < TokenType.FIRST: ' FIRST' > , < TokenType.PIVOT: ' PIVOT' > , < TokenType.ALL: ' ALL' > , < TokenType.TIMESTAMP: ' TIMESTAMP' > , < TokenType.YEAR: ' YEAR' > , < TokenType.UMEDIUMINT: ' UMEDIUMINT' > , < TokenType.IPPREFIX: ' IPPREFIX' > , < TokenType.TINYINT: ' TINYINT' > , < TokenType.DATETIME64: ' DATETIME64' > , < TokenType.STRUCT: ' STRUCT' > , < TokenType.NUMMULTIRANGE: ' NUMMULTIRANGE' > , < TokenType.OBJECT: ' OBJECT' > , < TokenType.KILL: ' KILL' > , < TokenType.FLOAT: ' FLOAT' > , < TokenType.SMALLMONEY: ' SMALLMONEY' > , < TokenType.VIEW: ' VIEW' > , < TokenType.BINARY: ' BINARY' > , < TokenType.TSMULTIRANGE: ' TSMULTIRANGE' > , < TokenType.UNKNOWN: ' UNKNOWN' > , < TokenType.OPERATOR: ' OPERATOR' > , < TokenType.END: ' END' > , < TokenType.UPDATE: ' UPDATE' > , < TokenType.MAP: ' MAP' > , < TokenType.EXECUTE: ' EXECUTE' > , < TokenType.IPV6: ' IPV6' > , < TokenType.BPCHAR: ' BPCHAR' > , < TokenType.USMALLINT: ' USMALLINT' > , < TokenType.PROCEDURE: ' PROCEDURE' > , < TokenType.DECIMAL128: ' DECIMAL128' > , < TokenType.BIGINT: ' BIGINT' > , < TokenType.RING: ' RING' > , < TokenType.DATABASE: ' DATABASE' > , < TokenType.VECTOR: ' VECTOR' > , < TokenType.INTERVAL: ' INTERVAL' > , < TokenType.COPY: ' COPY' > , < TokenType.ENUM: ' ENUM' > , < TokenType.FIXEDSTRING: ' FIXEDSTRING' > , < TokenType.VARIANT: ' VARIANT' > , < TokenType.DATERANGE: ' DATERANGE' > , < TokenType.TIME: ' TIME' > , < TokenType.GEOGRAPHY: ' GEOGRAPHY' > , < TokenType.TIMESTAMP_MS: ' TIMESTAMP_MS' > , < TokenType.MODEL: ' MODEL' > , < TokenType.SEMI: ' SEMI' > , < TokenType.
2025-02-13 21:41:14 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Parser.ID_VAR_TOKENS" > < / a >
2025-02-13 21:03:38 +01:00
< / div >
< div id = "Presto.Parser.TABLE_ALIAS_TOKENS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TABLE_ALIAS_TOKENS< / span > =
< input id = "Presto.Parser.TABLE_ALIAS_TOKENS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:57:37 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Parser.TABLE_ALIAS_TOKENS-view-value" > < / label > < span class = "default_value" > {< TokenType.DECIMAL32: ' DECIMAL32' > , < TokenType.TIMETZ: ' TIMETZ' > , < TokenType.VARBINARY: ' VARBINARY' > , < TokenType.CURRENT_TIME: ' CURRENT_TIME' > , < TokenType.RANGE: ' RANGE' > , < TokenType.NULL: ' NULL' > , < TokenType.COLUMN: ' COLUMN' > , < TokenType.FUNCTION: ' FUNCTION' > , < TokenType.NAME: ' NAME' > , < TokenType.NULLABLE: ' NULLABLE' > , < TokenType.WAREHOUSE: ' WAREHOUSE' > , < TokenType.SOME: ' SOME' > , < TokenType.TSRANGE: ' TSRANGE' > , < TokenType.HSTORE: ' HSTORE' > , < TokenType.SET: ' SET' > , < TokenType.CHAR: ' CHAR' > , < TokenType.OVERLAPS: ' OVERLAPS' > , < TokenType.COMMAND: ' COMMAND' > , < TokenType.TSTZRANGE: ' TSTZRANGE' > , < TokenType.ARRAY: ' ARRAY' > , < TokenType.INT4MULTIRANGE: ' INT4MULTIRANGE' > , < TokenType.ORDINALITY: ' ORDINALITY' > , < TokenType.ROWS: ' ROWS' > , < TokenType.RENAME: ' RENAME' > , < TokenType.TRUE: ' TRUE' > , < TokenType.IPADDRESS: ' IPADDRESS' > , < TokenType.CURRENT_TIMESTAMP: ' CURRENT_TIMESTAMP' > , < TokenType.LOAD: ' LOAD' > , < TokenType.BOOLEAN: ' BOOLEAN' > , < TokenType.ASC: ' ASC' > , < TokenType.DICTIONARY: ' DICTIONARY' > , < TokenType.DECIMAL: ' DECIMAL' > , < TokenType.ROLLUP: ' ROLLUP' > , < TokenType.STREAMLIT: ' STREAMLIT' > , < TokenType.TSTZMULTIRANGE: ' TSTZMULTIRANGE' > , < TokenType.BEGIN: ' BEGIN' > , < TokenType.ISNULL: ' ISNULL' > , < TokenType.CURRENT_USER: ' CURRENT_USER' > , < TokenType.LOWCARDINALITY: ' LOWCARDINALITY' > , < TokenType.CURRENT_DATE: ' CURRENT_DATE' > , < TokenType.FIRST: ' FIRST' > , < TokenType.PIVOT: ' PIVOT' > , < TokenType.ALL: ' ALL' > , < TokenType.TIMESTAMP: ' TIMESTAMP' > , < TokenType.YEAR: ' YEAR' > , < TokenType.UMEDIUMINT: ' UMEDIUMINT' > , < TokenType.IPPREFIX: ' IPPREFIX' > , < TokenType.TINYINT: ' TINYINT' > , < TokenType.DATETIME64: ' DATETIME64' > , < TokenType.STRUCT: ' STRUCT' > , < TokenType.NUMMULTIRANGE: ' NUMMULTIRANGE' > , < TokenType.OBJECT: ' OBJECT' > , < TokenType.KILL: ' KILL' > , < TokenType.FLOAT: ' FLOAT' > , < TokenType.SMALLMONEY: ' SMALLMONEY' > , < TokenType.VIEW: ' VIEW' > , < TokenType.BINARY: ' BINARY' > , < TokenType.TSMULTIRANGE: ' TSMULTIRANGE' > , < TokenType.UNKNOWN: ' UNKNOWN' > , < TokenType.OPERATOR: ' OPERATOR' > , < TokenType.END: ' END' > , < TokenType.UPDATE: ' UPDATE' > , < TokenType.MAP: ' MAP' > , < TokenType.EXECUTE: ' EXECUTE' > , < TokenType.IPV6: ' IPV6' > , < TokenType.BPCHAR: ' BPCHAR' > , < TokenType.USMALLINT: ' USMALLINT' > , < TokenType.PROCEDURE: ' PROCEDURE' > , < TokenType.DECIMAL128: ' DECIMAL128' > , < TokenType.BIGINT: ' BIGINT' > , < TokenType.RING: ' RING' > , < TokenType.DATABASE: ' DATABASE' > , < TokenType.VECTOR: ' VECTOR' > , < TokenType.INTERVAL: ' INTERVAL' > , < TokenType.COPY: ' COPY' > , < TokenType.ENUM: ' ENUM' > , < TokenType.FIXEDSTRING: ' FIXEDSTRING' > , < TokenType.VARIANT: ' VARIANT' > , < TokenType.DATERANGE: ' DATERANGE' > , < TokenType.TIME: ' TIME' > , < TokenType.GEOGRAPHY: ' GEOGRAPHY' > , < TokenType.TIMESTAMP_MS: ' TIMESTAMP_MS' > , < TokenType.MODEL: ' MODEL' > , < TokenType.SEMI: ' SEMI' > , < TokenType.ENUM8: ' ENUM8' > , < Token
2025-02-13 21:03:38 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Parser.TABLE_ALIAS_TOKENS" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.Parser.SHOW_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SHOW_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#Presto.Parser.SHOW_TRIE" > < / a >
< / div >
< div id = "Presto.Parser.SET_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SET_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< span class = "default_value" > {' GLOBAL' : {0: True}, ' LOCAL' : {0: True}, ' SESSION' : {0: True}, ' TRANSACTION' : {0: True}}< / span >
< / div >
< a class = "headerlink" href = "#Presto.Parser.SET_TRIE" > < / a >
< / div >
2025-02-13 15:23:26 +01:00
< div class = "inherited" >
< h5 > Inherited Members< / h5 >
< dl >
< div > < dt > < a href = "../parser.html#Parser" > sqlglot.parser.Parser< / a > < / dt >
< dd id = "Presto.Parser.__init__" class = "function" > < a href = "../parser.html#Parser.__init__" > Parser< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.NO_PAREN_FUNCTIONS" class = "variable" > < a href = "../parser.html#Parser.NO_PAREN_FUNCTIONS" > NO_PAREN_FUNCTIONS< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Parser.STRUCT_TYPE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.STRUCT_TYPE_TOKENS" > STRUCT_TYPE_TOKENS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.NESTED_TYPE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.NESTED_TYPE_TOKENS" > NESTED_TYPE_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.ENUM_TYPE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.ENUM_TYPE_TOKENS" > ENUM_TYPE_TOKENS< / a > < / dd >
2025-02-13 21:19:58 +01:00
< dd id = "Presto.Parser.AGGREGATE_TYPE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.AGGREGATE_TYPE_TOKENS" > AGGREGATE_TYPE_TOKENS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.TYPE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.TYPE_TOKENS" > TYPE_TOKENS< / a > < / dd >
2025-02-13 21:01:12 +01:00
< dd id = "Presto.Parser.SIGNED_TO_UNSIGNED_TYPE_TOKEN" class = "variable" > < a href = "../parser.html#Parser.SIGNED_TO_UNSIGNED_TYPE_TOKEN" > SIGNED_TO_UNSIGNED_TYPE_TOKEN< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.SUBQUERY_PREDICATES" class = "variable" > < a href = "../parser.html#Parser.SUBQUERY_PREDICATES" > SUBQUERY_PREDICATES< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Parser.RESERVED_TOKENS" class = "variable" > < a href = "../parser.html#Parser.RESERVED_TOKENS" > RESERVED_TOKENS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.DB_CREATABLES" class = "variable" > < a href = "../parser.html#Parser.DB_CREATABLES" > DB_CREATABLES< / a > < / dd >
< dd id = "Presto.Parser.CREATABLES" class = "variable" > < a href = "../parser.html#Parser.CREATABLES" > CREATABLES< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "Presto.Parser.ALTERABLES" class = "variable" > < a href = "../parser.html#Parser.ALTERABLES" > ALTERABLES< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.INTERVAL_VARS" class = "variable" > < a href = "../parser.html#Parser.INTERVAL_VARS" > INTERVAL_VARS< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Parser.ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.ALIAS_TOKENS" > ALIAS_TOKENS< / a > < / dd >
2025-02-13 21:39:30 +01:00
< dd id = "Presto.Parser.ARRAY_CONSTRUCTORS" class = "variable" > < a href = "../parser.html#Parser.ARRAY_CONSTRUCTORS" > ARRAY_CONSTRUCTORS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.COMMENT_TABLE_ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.COMMENT_TABLE_ALIAS_TOKENS" > COMMENT_TABLE_ALIAS_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.UPDATE_ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.UPDATE_ALIAS_TOKENS" > UPDATE_ALIAS_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.TRIM_TYPES" class = "variable" > < a href = "../parser.html#Parser.TRIM_TYPES" > TRIM_TYPES< / a > < / dd >
< dd id = "Presto.Parser.FUNC_TOKENS" class = "variable" > < a href = "../parser.html#Parser.FUNC_TOKENS" > FUNC_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.CONJUNCTION" class = "variable" > < a href = "../parser.html#Parser.CONJUNCTION" > CONJUNCTION< / a > < / dd >
2025-02-13 21:37:40 +01:00
< dd id = "Presto.Parser.ASSIGNMENT" class = "variable" > < a href = "../parser.html#Parser.ASSIGNMENT" > ASSIGNMENT< / a > < / dd >
< dd id = "Presto.Parser.DISJUNCTION" class = "variable" > < a href = "../parser.html#Parser.DISJUNCTION" > DISJUNCTION< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.EQUALITY" class = "variable" > < a href = "../parser.html#Parser.EQUALITY" > EQUALITY< / a > < / dd >
< dd id = "Presto.Parser.COMPARISON" class = "variable" > < a href = "../parser.html#Parser.COMPARISON" > COMPARISON< / a > < / dd >
< dd id = "Presto.Parser.BITWISE" class = "variable" > < a href = "../parser.html#Parser.BITWISE" > BITWISE< / a > < / dd >
< dd id = "Presto.Parser.TERM" class = "variable" > < a href = "../parser.html#Parser.TERM" > TERM< / a > < / dd >
< dd id = "Presto.Parser.FACTOR" class = "variable" > < a href = "../parser.html#Parser.FACTOR" > FACTOR< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Parser.EXPONENT" class = "variable" > < a href = "../parser.html#Parser.EXPONENT" > EXPONENT< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Parser.TIMES" class = "variable" > < a href = "../parser.html#Parser.TIMES" > TIMES< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.TIMESTAMPS" class = "variable" > < a href = "../parser.html#Parser.TIMESTAMPS" > TIMESTAMPS< / a > < / dd >
< dd id = "Presto.Parser.SET_OPERATIONS" class = "variable" > < a href = "../parser.html#Parser.SET_OPERATIONS" > SET_OPERATIONS< / a > < / dd >
< dd id = "Presto.Parser.JOIN_METHODS" class = "variable" > < a href = "../parser.html#Parser.JOIN_METHODS" > JOIN_METHODS< / a > < / dd >
< dd id = "Presto.Parser.JOIN_SIDES" class = "variable" > < a href = "../parser.html#Parser.JOIN_SIDES" > JOIN_SIDES< / a > < / dd >
< dd id = "Presto.Parser.JOIN_KINDS" class = "variable" > < a href = "../parser.html#Parser.JOIN_KINDS" > JOIN_KINDS< / a > < / dd >
< dd id = "Presto.Parser.JOIN_HINTS" class = "variable" > < a href = "../parser.html#Parser.JOIN_HINTS" > JOIN_HINTS< / a > < / dd >
< dd id = "Presto.Parser.LAMBDAS" class = "variable" > < a href = "../parser.html#Parser.LAMBDAS" > LAMBDAS< / a > < / dd >
< dd id = "Presto.Parser.COLUMN_OPERATORS" class = "variable" > < a href = "../parser.html#Parser.COLUMN_OPERATORS" > COLUMN_OPERATORS< / a > < / dd >
< dd id = "Presto.Parser.EXPRESSION_PARSERS" class = "variable" > < a href = "../parser.html#Parser.EXPRESSION_PARSERS" > EXPRESSION_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.STATEMENT_PARSERS" class = "variable" > < a href = "../parser.html#Parser.STATEMENT_PARSERS" > STATEMENT_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.UNARY_PARSERS" class = "variable" > < a href = "../parser.html#Parser.UNARY_PARSERS" > UNARY_PARSERS< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Parser.STRING_PARSERS" class = "variable" > < a href = "../parser.html#Parser.STRING_PARSERS" > STRING_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.NUMERIC_PARSERS" class = "variable" > < a href = "../parser.html#Parser.NUMERIC_PARSERS" > NUMERIC_PARSERS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.PRIMARY_PARSERS" class = "variable" > < a href = "../parser.html#Parser.PRIMARY_PARSERS" > PRIMARY_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.PLACEHOLDER_PARSERS" class = "variable" > < a href = "../parser.html#Parser.PLACEHOLDER_PARSERS" > PLACEHOLDER_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.RANGE_PARSERS" class = "variable" > < a href = "../parser.html#Parser.RANGE_PARSERS" > RANGE_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.PROPERTY_PARSERS" class = "variable" > < a href = "../parser.html#Parser.PROPERTY_PARSERS" > PROPERTY_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.CONSTRAINT_PARSERS" class = "variable" > < a href = "../parser.html#Parser.CONSTRAINT_PARSERS" > CONSTRAINT_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.ALTER_PARSERS" class = "variable" > < a href = "../parser.html#Parser.ALTER_PARSERS" > ALTER_PARSERS< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "Presto.Parser.ALTER_ALTER_PARSERS" class = "variable" > < a href = "../parser.html#Parser.ALTER_ALTER_PARSERS" > ALTER_ALTER_PARSERS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.SCHEMA_UNNAMED_CONSTRAINTS" class = "variable" > < a href = "../parser.html#Parser.SCHEMA_UNNAMED_CONSTRAINTS" > SCHEMA_UNNAMED_CONSTRAINTS< / a > < / dd >
< dd id = "Presto.Parser.NO_PAREN_FUNCTION_PARSERS" class = "variable" > < a href = "../parser.html#Parser.NO_PAREN_FUNCTION_PARSERS" > NO_PAREN_FUNCTION_PARSERS< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Parser.INVALID_FUNC_NAME_TOKENS" class = "variable" > < a href = "../parser.html#Parser.INVALID_FUNC_NAME_TOKENS" > INVALID_FUNC_NAME_TOKENS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.FUNCTIONS_WITH_ALIASED_ARGS" class = "variable" > < a href = "../parser.html#Parser.FUNCTIONS_WITH_ALIASED_ARGS" > FUNCTIONS_WITH_ALIASED_ARGS< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Parser.KEY_VALUE_DEFINITIONS" class = "variable" > < a href = "../parser.html#Parser.KEY_VALUE_DEFINITIONS" > KEY_VALUE_DEFINITIONS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.QUERY_MODIFIER_PARSERS" class = "variable" > < a href = "../parser.html#Parser.QUERY_MODIFIER_PARSERS" > QUERY_MODIFIER_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.SET_PARSERS" class = "variable" > < a href = "../parser.html#Parser.SET_PARSERS" > SET_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.SHOW_PARSERS" class = "variable" > < a href = "../parser.html#Parser.SHOW_PARSERS" > SHOW_PARSERS< / a > < / dd >
< dd id = "Presto.Parser.TYPE_LITERAL_PARSERS" class = "variable" > < a href = "../parser.html#Parser.TYPE_LITERAL_PARSERS" > TYPE_LITERAL_PARSERS< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Parser.TYPE_CONVERTERS" class = "variable" > < a href = "../parser.html#Parser.TYPE_CONVERTERS" > TYPE_CONVERTERS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.DDL_SELECT_TOKENS" class = "variable" > < a href = "../parser.html#Parser.DDL_SELECT_TOKENS" > DDL_SELECT_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.PRE_VOLATILE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.PRE_VOLATILE_TOKENS" > PRE_VOLATILE_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.TRANSACTION_KIND" class = "variable" > < a href = "../parser.html#Parser.TRANSACTION_KIND" > TRANSACTION_KIND< / a > < / dd >
< dd id = "Presto.Parser.TRANSACTION_CHARACTERISTICS" class = "variable" > < a href = "../parser.html#Parser.TRANSACTION_CHARACTERISTICS" > TRANSACTION_CHARACTERISTICS< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Parser.CONFLICT_ACTIONS" class = "variable" > < a href = "../parser.html#Parser.CONFLICT_ACTIONS" > CONFLICT_ACTIONS< / a > < / dd >
< dd id = "Presto.Parser.CREATE_SEQUENCE" class = "variable" > < a href = "../parser.html#Parser.CREATE_SEQUENCE" > CREATE_SEQUENCE< / a > < / dd >
< dd id = "Presto.Parser.ISOLATED_LOADING_OPTIONS" class = "variable" > < a href = "../parser.html#Parser.ISOLATED_LOADING_OPTIONS" > ISOLATED_LOADING_OPTIONS< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Parser.USABLES" class = "variable" > < a href = "../parser.html#Parser.USABLES" > USABLES< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Parser.CAST_ACTIONS" class = "variable" > < a href = "../parser.html#Parser.CAST_ACTIONS" > CAST_ACTIONS< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Parser.SCHEMA_BINDING_OPTIONS" class = "variable" > < a href = "../parser.html#Parser.SCHEMA_BINDING_OPTIONS" > SCHEMA_BINDING_OPTIONS< / a > < / dd >
2025-02-13 21:56:19 +01:00
< dd id = "Presto.Parser.PROCEDURE_OPTIONS" class = "variable" > < a href = "../parser.html#Parser.PROCEDURE_OPTIONS" > PROCEDURE_OPTIONS< / a > < / dd >
< dd id = "Presto.Parser.EXECUTE_AS_OPTIONS" class = "variable" > < a href = "../parser.html#Parser.EXECUTE_AS_OPTIONS" > EXECUTE_AS_OPTIONS< / a > < / dd >
2025-02-13 21:51:42 +01:00
< dd id = "Presto.Parser.KEY_CONSTRAINT_OPTIONS" class = "variable" > < a href = "../parser.html#Parser.KEY_CONSTRAINT_OPTIONS" > KEY_CONSTRAINT_OPTIONS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.INSERT_ALTERNATIVES" class = "variable" > < a href = "../parser.html#Parser.INSERT_ALTERNATIVES" > INSERT_ALTERNATIVES< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Parser.CLONE_KEYWORDS" class = "variable" > < a href = "../parser.html#Parser.CLONE_KEYWORDS" > CLONE_KEYWORDS< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Parser.HISTORICAL_DATA_PREFIX" class = "variable" > < a href = "../parser.html#Parser.HISTORICAL_DATA_PREFIX" > HISTORICAL_DATA_PREFIX< / a > < / dd >
2025-02-13 21:17:51 +01:00
< dd id = "Presto.Parser.HISTORICAL_DATA_KIND" class = "variable" > < a href = "../parser.html#Parser.HISTORICAL_DATA_KIND" > HISTORICAL_DATA_KIND< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Parser.OPCLASS_FOLLOW_KEYWORDS" class = "variable" > < a href = "../parser.html#Parser.OPCLASS_FOLLOW_KEYWORDS" > OPCLASS_FOLLOW_KEYWORDS< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Parser.OPTYPE_FOLLOW_TOKENS" class = "variable" > < a href = "../parser.html#Parser.OPTYPE_FOLLOW_TOKENS" > OPTYPE_FOLLOW_TOKENS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.TABLE_INDEX_HINT_TOKENS" class = "variable" > < a href = "../parser.html#Parser.TABLE_INDEX_HINT_TOKENS" > TABLE_INDEX_HINT_TOKENS< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Parser.VIEW_ATTRIBUTES" class = "variable" > < a href = "../parser.html#Parser.VIEW_ATTRIBUTES" > VIEW_ATTRIBUTES< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.WINDOW_ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.WINDOW_ALIAS_TOKENS" > WINDOW_ALIAS_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.WINDOW_BEFORE_PAREN_TOKENS" class = "variable" > < a href = "../parser.html#Parser.WINDOW_BEFORE_PAREN_TOKENS" > WINDOW_BEFORE_PAREN_TOKENS< / a > < / dd >
< dd id = "Presto.Parser.WINDOW_SIDES" class = "variable" > < a href = "../parser.html#Parser.WINDOW_SIDES" > WINDOW_SIDES< / a > < / dd >
2025-02-13 21:19:58 +01:00
< dd id = "Presto.Parser.JSON_KEY_VALUE_SEPARATOR_TOKENS" class = "variable" > < a href = "../parser.html#Parser.JSON_KEY_VALUE_SEPARATOR_TOKENS" > JSON_KEY_VALUE_SEPARATOR_TOKENS< / a > < / dd >
2025-02-13 21:02:36 +01:00
< dd id = "Presto.Parser.FETCH_TOKENS" class = "variable" > < a href = "../parser.html#Parser.FETCH_TOKENS" > FETCH_TOKENS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.ADD_CONSTRAINT_TOKENS" class = "variable" > < a href = "../parser.html#Parser.ADD_CONSTRAINT_TOKENS" > ADD_CONSTRAINT_TOKENS< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Parser.DISTINCT_TOKENS" class = "variable" > < a href = "../parser.html#Parser.DISTINCT_TOKENS" > DISTINCT_TOKENS< / a > < / dd >
2025-02-13 21:03:38 +01:00
< dd id = "Presto.Parser.NULL_TOKENS" class = "variable" > < a href = "../parser.html#Parser.NULL_TOKENS" > NULL_TOKENS< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Parser.UNNEST_OFFSET_ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.UNNEST_OFFSET_ALIAS_TOKENS" > UNNEST_OFFSET_ALIAS_TOKENS< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Parser.SELECT_START_TOKENS" class = "variable" > < a href = "../parser.html#Parser.SELECT_START_TOKENS" > SELECT_START_TOKENS< / a > < / dd >
2025-02-13 21:37:40 +01:00
< dd id = "Presto.Parser.COPY_INTO_VARLEN_OPTIONS" class = "variable" > < a href = "../parser.html#Parser.COPY_INTO_VARLEN_OPTIONS" > COPY_INTO_VARLEN_OPTIONS< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "Presto.Parser.IS_JSON_PREDICATE_KIND" class = "variable" > < a href = "../parser.html#Parser.IS_JSON_PREDICATE_KIND" > IS_JSON_PREDICATE_KIND< / a > < / dd >
< dd id = "Presto.Parser.ODBC_DATETIME_LITERALS" class = "variable" > < a href = "../parser.html#Parser.ODBC_DATETIME_LITERALS" > ODBC_DATETIME_LITERALS< / a > < / dd >
< dd id = "Presto.Parser.ON_CONDITION_TOKENS" class = "variable" > < a href = "../parser.html#Parser.ON_CONDITION_TOKENS" > ON_CONDITION_TOKENS< / a > < / dd >
2025-02-13 21:55:19 +01:00
< dd id = "Presto.Parser.PRIVILEGE_FOLLOW_TOKENS" class = "variable" > < a href = "../parser.html#Parser.PRIVILEGE_FOLLOW_TOKENS" > PRIVILEGE_FOLLOW_TOKENS< / a > < / dd >
2025-02-13 21:56:02 +01:00
< dd id = "Presto.Parser.DESCRIBE_STYLES" class = "variable" > < a href = "../parser.html#Parser.DESCRIBE_STYLES" > DESCRIBE_STYLES< / a > < / dd >
< dd id = "Presto.Parser.OPERATION_MODIFIERS" class = "variable" > < a href = "../parser.html#Parser.OPERATION_MODIFIERS" > OPERATION_MODIFIERS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.STRICT_CAST" class = "variable" > < a href = "../parser.html#Parser.STRICT_CAST" > STRICT_CAST< / a > < / dd >
< dd id = "Presto.Parser.PREFIXED_PIVOT_COLUMNS" class = "variable" > < a href = "../parser.html#Parser.PREFIXED_PIVOT_COLUMNS" > PREFIXED_PIVOT_COLUMNS< / a > < / dd >
< dd id = "Presto.Parser.IDENTIFY_PIVOT_STRINGS" class = "variable" > < a href = "../parser.html#Parser.IDENTIFY_PIVOT_STRINGS" > IDENTIFY_PIVOT_STRINGS< / a > < / dd >
< dd id = "Presto.Parser.LOG_DEFAULTS_TO_LN" class = "variable" > < a href = "../parser.html#Parser.LOG_DEFAULTS_TO_LN" > LOG_DEFAULTS_TO_LN< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Parser.ALTER_TABLE_ADD_REQUIRED_FOR_EACH_COLUMN" class = "variable" > < a href = "../parser.html#Parser.ALTER_TABLE_ADD_REQUIRED_FOR_EACH_COLUMN" > ALTER_TABLE_ADD_REQUIRED_FOR_EACH_COLUMN< / a > < / dd >
2025-02-13 21:01:12 +01:00
< dd id = "Presto.Parser.TABLESAMPLE_CSV" class = "variable" > < a href = "../parser.html#Parser.TABLESAMPLE_CSV" > TABLESAMPLE_CSV< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "Presto.Parser.DEFAULT_SAMPLING_METHOD" class = "variable" > < a href = "../parser.html#Parser.DEFAULT_SAMPLING_METHOD" > DEFAULT_SAMPLING_METHOD< / a > < / dd >
2025-02-13 21:03:38 +01:00
< dd id = "Presto.Parser.SET_REQUIRES_ASSIGNMENT_DELIMITER" class = "variable" > < a href = "../parser.html#Parser.SET_REQUIRES_ASSIGNMENT_DELIMITER" > SET_REQUIRES_ASSIGNMENT_DELIMITER< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Parser.TRIM_PATTERN_FIRST" class = "variable" > < a href = "../parser.html#Parser.TRIM_PATTERN_FIRST" > TRIM_PATTERN_FIRST< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Parser.STRING_ALIASES" class = "variable" > < a href = "../parser.html#Parser.STRING_ALIASES" > STRING_ALIASES< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Parser.MODIFIERS_ATTACHED_TO_SET_OP" class = "variable" > < a href = "../parser.html#Parser.MODIFIERS_ATTACHED_TO_SET_OP" > MODIFIERS_ATTACHED_TO_SET_OP< / a > < / dd >
< dd id = "Presto.Parser.SET_OP_MODIFIERS" class = "variable" > < a href = "../parser.html#Parser.SET_OP_MODIFIERS" > SET_OP_MODIFIERS< / a > < / dd >
2025-02-13 21:20:36 +01:00
< dd id = "Presto.Parser.NO_PAREN_IF_COMMANDS" class = "variable" > < a href = "../parser.html#Parser.NO_PAREN_IF_COMMANDS" > NO_PAREN_IF_COMMANDS< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Parser.JSON_ARROWS_REQUIRE_JSON_TYPE" class = "variable" > < a href = "../parser.html#Parser.JSON_ARROWS_REQUIRE_JSON_TYPE" > JSON_ARROWS_REQUIRE_JSON_TYPE< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Parser.COLON_IS_VARIANT_EXTRACT" class = "variable" > < a href = "../parser.html#Parser.COLON_IS_VARIANT_EXTRACT" > COLON_IS_VARIANT_EXTRACT< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Parser.SUPPORTS_IMPLICIT_UNNEST" class = "variable" > < a href = "../parser.html#Parser.SUPPORTS_IMPLICIT_UNNEST" > SUPPORTS_IMPLICIT_UNNEST< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Parser.INTERVAL_SPANS" class = "variable" > < a href = "../parser.html#Parser.INTERVAL_SPANS" > INTERVAL_SPANS< / a > < / dd >
2025-02-13 21:32:41 +01:00
< dd id = "Presto.Parser.SUPPORTS_PARTITION_SELECTION" class = "variable" > < a href = "../parser.html#Parser.SUPPORTS_PARTITION_SELECTION" > SUPPORTS_PARTITION_SELECTION< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.error_level" class = "variable" > < a href = "../parser.html#Parser.error_level" > error_level< / a > < / dd >
< dd id = "Presto.Parser.error_message_context" class = "variable" > < a href = "../parser.html#Parser.error_message_context" > error_message_context< / a > < / dd >
< dd id = "Presto.Parser.max_errors" class = "variable" > < a href = "../parser.html#Parser.max_errors" > max_errors< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Parser.dialect" class = "variable" > < a href = "../parser.html#Parser.dialect" > dialect< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Parser.reset" class = "function" > < a href = "../parser.html#Parser.reset" > reset< / a > < / dd >
< dd id = "Presto.Parser.parse" class = "function" > < a href = "../parser.html#Parser.parse" > parse< / a > < / dd >
< dd id = "Presto.Parser.parse_into" class = "function" > < a href = "../parser.html#Parser.parse_into" > parse_into< / a > < / dd >
< dd id = "Presto.Parser.check_errors" class = "function" > < a href = "../parser.html#Parser.check_errors" > check_errors< / a > < / dd >
< dd id = "Presto.Parser.raise_error" class = "function" > < a href = "../parser.html#Parser.raise_error" > raise_error< / a > < / dd >
< dd id = "Presto.Parser.expression" class = "function" > < a href = "../parser.html#Parser.expression" > expression< / a > < / dd >
< dd id = "Presto.Parser.validate_expression" class = "function" > < a href = "../parser.html#Parser.validate_expression" > validate_expression< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Parser.errors" class = "variable" > < a href = "../parser.html#Parser.errors" > errors< / a > < / dd >
< dd id = "Presto.Parser.sql" class = "variable" > < a href = "../parser.html#Parser.sql" > sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< / div >
< / dl >
< / div >
< / section >
< section id = "Presto.Generator" >
< input id = "Presto.Generator-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr class" >
< span class = "def" > class< / span >
< span class = "name" > Presto.Generator< / span > < wbr > (< span class = "base" > < a href = "../generator.html#Generator" > sqlglot.generator.Generator< / a > < / span > ):
< label class = "view-source-button" for = "Presto.Generator-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator-306" > < a href = "#Presto.Generator-306" > < span class = "linenos" > 306< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > Generator< / span > < span class = "p" > (< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-307" > < a href = "#Presto.Generator-307" > < span class = "linenos" > 307< / span > < / a > < span class = "n" > INTERVAL_ALLOWS_PLURAL_FORM< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-308" > < a href = "#Presto.Generator-308" > < span class = "linenos" > 308< / span > < / a > < span class = "n" > JOIN_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-309" > < a href = "#Presto.Generator-309" > < span class = "linenos" > 309< / span > < / a > < span class = "n" > TABLE_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-310" > < a href = "#Presto.Generator-310" > < span class = "linenos" > 310< / span > < / a > < span class = "n" > QUERY_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-311" > < a href = "#Presto.Generator-311" > < span class = "linenos" > 311< / span > < / a > < span class = "n" > IS_BOOL_ALLOWED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-312" > < a href = "#Presto.Generator-312" > < span class = "linenos" > 312< / span > < / a > < span class = "n" > TZ_TO_WITH_TIME_ZONE< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto.Generator-313" > < a href = "#Presto.Generator-313" > < span class = "linenos" > 313< / span > < / a > < span class = "n" > NVL2_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-314" > < a href = "#Presto.Generator-314" > < span class = "linenos" > 314< / span > < / a > < span class = "n" > STRUCT_DELIMITER< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "s2" > " (" < / span > < span class = "p" > ,< / span > < span class = "s2" > " )" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-315" > < a href = "#Presto.Generator-315" > < span class = "linenos" > 315< / span > < / a > < span class = "n" > LIMIT_ONLY_LITERALS< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto.Generator-316" > < a href = "#Presto.Generator-316" > < span class = "linenos" > 316< / span > < / a > < span class = "n" > SUPPORTS_SINGLE_ARG_CONCAT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-317" > < a href = "#Presto.Generator-317" > < span class = "linenos" > 317< / span > < / a > < span class = "n" > LIKE_PROPERTY_INSIDE_SCHEMA< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto.Generator-318" > < a href = "#Presto.Generator-318" > < span class = "linenos" > 318< / span > < / a > < span class = "n" > MULTI_ARG_DISTINCT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-319" > < a href = "#Presto.Generator-319" > < span class = "linenos" > 319< / span > < / a > < span class = "n" > SUPPORTS_TO_NUMBER< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-320" > < a href = "#Presto.Generator-320" > < span class = "linenos" > 320< / span > < / a > < span class = "n" > HEX_FUNC< / span > < span class = "o" > =< / span > < span class = "s2" > " TO_HEX" < / span >
< / span > < span id = "Presto.Generator-321" > < a href = "#Presto.Generator-321" > < span class = "linenos" > 321< / span > < / a > < span class = "n" > PARSE_JSON_NAME< / span > < span class = "o" > =< / span > < span class = "s2" > " JSON_PARSE" < / span >
< / span > < span id = "Presto.Generator-322" > < a href = "#Presto.Generator-322" > < span class = "linenos" > 322< / span > < / a > < span class = "n" > PAD_FILL_PATTERN_IS_REQUIRED< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto.Generator-323" > < a href = "#Presto.Generator-323" > < span class = "linenos" > 323< / span > < / a > < span class = "n" > EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-324" > < a href = "#Presto.Generator-324" > < span class = "linenos" > 324< / span > < / a > < span class = "n" > SUPPORTS_MEDIAN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-325" > < a href = "#Presto.Generator-325" > < span class = "linenos" > 325< / span > < / a > < span class = "n" > ARRAY_SIZE_NAME< / span > < span class = "o" > =< / span > < span class = "s2" > " CARDINALITY" < / span >
< / span > < span id = "Presto.Generator-326" > < a href = "#Presto.Generator-326" > < span class = "linenos" > 326< / span > < / a >
< / span > < span id = "Presto.Generator-327" > < a href = "#Presto.Generator-327" > < span class = "linenos" > 327< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto.Generator-328" > < a href = "#Presto.Generator-328" > < span class = "linenos" > 328< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-329" > < a href = "#Presto.Generator-329" > < span class = "linenos" > 329< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LocationProperty< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Properties< / span > < span class = "o" > .< / span > < span class = "n" > Location< / span > < span class = "o" > .< / span > < span class = "n" > UNSUPPORTED< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-330" > < a href = "#Presto.Generator-330" > < span class = "linenos" > 330< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > VolatileProperty< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Properties< / span > < span class = "o" > .< / span > < span class = "n" > Location< / span > < span class = "o" > .< / span > < span class = "n" > UNSUPPORTED< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-331" > < a href = "#Presto.Generator-331" > < span class = "linenos" > 331< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto.Generator-332" > < a href = "#Presto.Generator-332" > < span class = "linenos" > 332< / span > < / a >
< / span > < span id = "Presto.Generator-333" > < a href = "#Presto.Generator-333" > < span class = "linenos" > 333< / span > < / a > < span class = "n" > TYPE_MAPPING< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto.Generator-334" > < a href = "#Presto.Generator-334" > < span class = "linenos" > 334< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > TYPE_MAPPING< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-335" > < a href = "#Presto.Generator-335" > < span class = "linenos" > 335< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > BINARY< / span > < span class = "p" > :< / span > < span class = "s2" > " VARBINARY" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-336" > < a href = "#Presto.Generator-336" > < span class = "linenos" > 336< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > BIT< / span > < span class = "p" > :< / span > < span class = "s2" > " BOOLEAN" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-337" > < a href = "#Presto.Generator-337" > < span class = "linenos" > 337< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATETIME< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-338" > < a href = "#Presto.Generator-338" > < span class = "linenos" > 338< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DATETIME64< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-339" > < a href = "#Presto.Generator-339" > < span class = "linenos" > 339< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > FLOAT< / span > < span class = "p" > :< / span > < span class = "s2" > " REAL" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-340" > < a href = "#Presto.Generator-340" > < span class = "linenos" > 340< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > HLLSKETCH< / span > < span class = "p" > :< / span > < span class = "s2" > " HYPERLOGLOG" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-341" > < a href = "#Presto.Generator-341" > < span class = "linenos" > 341< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > INT< / span > < span class = "p" > :< / span > < span class = "s2" > " INTEGER" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-342" > < a href = "#Presto.Generator-342" > < span class = "linenos" > 342< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > STRUCT< / span > < span class = "p" > :< / span > < span class = "s2" > " ROW" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-343" > < a href = "#Presto.Generator-343" > < span class = "linenos" > 343< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > :< / span > < span class = "s2" > " VARCHAR" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-344" > < a href = "#Presto.Generator-344" > < span class = "linenos" > 344< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMPTZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-345" > < a href = "#Presto.Generator-345" > < span class = "linenos" > 345< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMPNTZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-346" > < a href = "#Presto.Generator-346" > < span class = "linenos" > 346< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMETZ< / span > < span class = "p" > :< / span > < span class = "s2" > " TIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-347" > < a href = "#Presto.Generator-347" > < span class = "linenos" > 347< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto.Generator-348" > < a href = "#Presto.Generator-348" > < span class = "linenos" > 348< / span > < / a >
< / span > < span id = "Presto.Generator-349" > < a href = "#Presto.Generator-349" > < span class = "linenos" > 349< / span > < / a > < span class = "n" > TRANSFORMS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto.Generator-350" > < a href = "#Presto.Generator-350" > < span class = "linenos" > 350< / span > < / a > < span class = "o" > **< / span > < span class = "n" > generator< / span > < span class = "o" > .< / span > < span class = "n" > Generator< / span > < span class = "o" > .< / span > < span class = "n" > TRANSFORMS< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-351" > < a href = "#Presto.Generator-351" > < span class = "linenos" > 351< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AnyValue< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARBITRARY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-352" > < a href = "#Presto.Generator-352" > < span class = "linenos" > 352< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxQuantile< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " APPROX_PERCENTILE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-353" > < a href = "#Presto.Generator-353" > < span class = "linenos" > 353< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMax< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAX_BY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-354" > < a href = "#Presto.Generator-354" > < span class = "linenos" > 354< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMin< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MIN_BY" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-355" > < a href = "#Presto.Generator-355" > < span class = "linenos" > 355< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Array< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " ARRAY[< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > flat< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ]" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-356" > < a href = "#Presto.Generator-356" > < span class = "linenos" > 356< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayAny< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ANY_MATCH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-357" > < a href = "#Presto.Generator-357" > < span class = "linenos" > 357< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayConcat< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " CONCAT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-358" > < a href = "#Presto.Generator-358" > < span class = "linenos" > 358< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayContains< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " CONTAINS" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-359" > < a href = "#Presto.Generator-359" > < span class = "linenos" > 359< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayToString< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_JOIN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-360" > < a href = "#Presto.Generator-360" > < span class = "linenos" > 360< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayUniqueAgg< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SET_AGG" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-361" > < a href = "#Presto.Generator-361" > < span class = "linenos" > 361< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > AtTimeZone< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " AT_TIMEZONE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-362" > < a href = "#Presto.Generator-362" > < span class = "linenos" > 362< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseAnd< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_AND" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-363" > < a href = "#Presto.Generator-363" > < span class = "linenos" > 363< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseLeftShift< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-364" > < a href = "#Presto.Generator-364" > < span class = "linenos" > 364< / span > < / a > < span class = "s2" > " BITWISE_ARITHMETIC_SHIFT_LEFT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span >
< / span > < span id = "Presto.Generator-365" > < a href = "#Presto.Generator-365" > < span class = "linenos" > 365< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-366" > < a href = "#Presto.Generator-366" > < span class = "linenos" > 366< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseNot< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_NOT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-367" > < a href = "#Presto.Generator-367" > < span class = "linenos" > 367< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseOr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_OR" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-368" > < a href = "#Presto.Generator-368" > < span class = "linenos" > 368< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseRightShift< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-369" > < a href = "#Presto.Generator-369" > < span class = "linenos" > 369< / span > < / a > < span class = "s2" > " BITWISE_ARITHMETIC_SHIFT_RIGHT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span >
< / span > < span id = "Presto.Generator-370" > < a href = "#Presto.Generator-370" > < span class = "linenos" > 370< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-371" > < a href = "#Presto.Generator-371" > < span class = "linenos" > 371< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " BITWISE_XOR" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-372" > < a href = "#Presto.Generator-372" > < span class = "linenos" > 372< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Cast< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > epoch_cast_to_ts< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto.Generator-373" > < a href = "#Presto.Generator-373" > < span class = "linenos" > 373< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTime< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "o" > *< / span > < span class = "n" > _< / span > < span class = "p" > :< / span > < span class = "s2" > " CURRENT_TIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-374" > < a href = "#Presto.Generator-374" > < span class = "linenos" > 374< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentTimestamp< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "o" > *< / span > < span class = "n" > _< / span > < span class = "p" > :< / span > < span class = "s2" > " CURRENT_TIMESTAMP" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-375" > < a href = "#Presto.Generator-375" > < span class = "linenos" > 375< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-376" > < a href = "#Presto.Generator-376" > < span class = "linenos" > 376< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-377" > < a href = "#Presto.Generator-377" > < span class = "linenos" > 377< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / span > < span class = "n" > unit_to_str< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator-378" > < a href = "#Presto.Generator-378" > < span class = "linenos" > 378< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-379" > < a href = "#Presto.Generator-379" > < span class = "linenos" > 379< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateStrToDate< / span > < span class = "p" > :< / span > < span class = "n" > datestrtodate_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-380" > < a href = "#Presto.Generator-380" > < span class = "linenos" > 380< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateToDi< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-381" > < a href = "#Presto.Generator-381" > < span class = "linenos" > 381< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(DATE_FORMAT(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > , < / span > < span class = "si" > {< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > DATEINT_FORMAT< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-382" > < a href = "#Presto.Generator-382" > < span class = "linenos" > 382< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateSub< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ,< / span > < span class = "n" > negate_interval< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-383" > < a href = "#Presto.Generator-383" > < span class = "linenos" > 383< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeek< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " ((< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s1" > ' DAY_OF_WEEK' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > % 7) + 1)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-384" > < a href = "#Presto.Generator-384" > < span class = "linenos" > 384< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeekIso< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAY_OF_WEEK" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-385" > < a href = "#Presto.Generator-385" > < span class = "linenos" > 385< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Decode< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > encode_decode_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " FROM_UTF8" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-386" > < a href = "#Presto.Generator-386" > < span class = "linenos" > 386< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DiToDate< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-387" > < a href = "#Presto.Generator-387" > < span class = "linenos" > 387< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(DATE_PARSE(CAST(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS VARCHAR), < / span > < span class = "si" > {< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > DATEINT_FORMAT< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS DATE)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-388" > < a href = "#Presto.Generator-388" > < span class = "linenos" > 388< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > encode_decode_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " TO_UTF8" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-389" > < a href = "#Presto.Generator-389" > < span class = "linenos" > 389< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FileFormatProperty< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " FORMAT=' < / span > < span class = "si" > {< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ()< / span > < span class = "si" > }< / span > < span class = "s2" > ' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-390" > < a href = "#Presto.Generator-390" > < span class = "linenos" > 390< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > First< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-391" > < a href = "#Presto.Generator-391" > < span class = "linenos" > 391< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FirstValue< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-392" > < a href = "#Presto.Generator-392" > < span class = "linenos" > 392< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FromTimeZone< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-393" > < a href = "#Presto.Generator-393" > < span class = "linenos" > 393< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " WITH_TIMEZONE(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > , < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' zone' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AT TIME ZONE ' UTC' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-394" > < a href = "#Presto.Generator-394" > < span class = "linenos" > 394< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "p" > :< / span > < span class = "n" > sequence_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-395" > < a href = "#Presto.Generator-395" > < span class = "linenos" > 395< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateDateArray< / span > < span class = "p" > :< / span > < span class = "n" > sequence_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-396" > < a href = "#Presto.Generator-396" > < span class = "linenos" > 396< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Group< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > unalias_group< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto.Generator-397" > < a href = "#Presto.Generator-397" > < span class = "linenos" > 397< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > If< / span > < span class = "p" > :< / span > < span class = "n" > if_sql< / span > < span class = "p" > (),< / span >
< / span > < span id = "Presto.Generator-398" > < a href = "#Presto.Generator-398" > < span class = "linenos" > 398< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ILike< / span > < span class = "p" > :< / span > < span class = "n" > no_ilike_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-399" > < a href = "#Presto.Generator-399" > < span class = "linenos" > 399< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Initcap< / span > < span class = "p" > :< / span > < span class = "n" > _initcap_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-400" > < a href = "#Presto.Generator-400" > < span class = "linenos" > 400< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > jsonextract_sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-401" > < a href = "#Presto.Generator-401" > < span class = "linenos" > 401< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Last< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-402" > < a href = "#Presto.Generator-402" > < span class = "linenos" > 402< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LastValue< / span > < span class = "p" > :< / span > < span class = "n" > _first_last_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-403" > < a href = "#Presto.Generator-403" > < span class = "linenos" > 403< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LastDay< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " LAST_DAY_OF_MONTH" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-404" > < a href = "#Presto.Generator-404" > < span class = "linenos" > 404< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Lateral< / span > < span class = "p" > :< / span > < span class = "n" > explode_to_unnest_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-405" > < a href = "#Presto.Generator-405" > < span class = "linenos" > 405< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Left< / span > < span class = "p" > :< / span > < span class = "n" > left_to_substring_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-406" > < a href = "#Presto.Generator-406" > < span class = "linenos" > 406< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Levenshtein< / span > < span class = "p" > :< / span > < span class = "n" > unsupported_args< / span > < span class = "p" > (< / span > < span class = "s2" > " ins_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " del_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " sub_cost" < / span > < span class = "p" > ,< / span > < span class = "s2" > " max_dist" < / span > < span class = "p" > )(< / span >
< / span > < span id = "Presto.Generator-407" > < a href = "#Presto.Generator-407" > < span class = "linenos" > 407< / span > < / a > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LEVENSHTEIN_DISTANCE" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-408" > < a href = "#Presto.Generator-408" > < span class = "linenos" > 408< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-409" > < a href = "#Presto.Generator-409" > < span class = "linenos" > 409< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LogicalAnd< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " BOOL_AND" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-410" > < a href = "#Presto.Generator-410" > < span class = "linenos" > 410< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LogicalOr< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " BOOL_OR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-411" > < a href = "#Presto.Generator-411" > < span class = "linenos" > 411< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pivot< / span > < span class = "p" > :< / span > < span class = "n" > no_pivot_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-412" > < a href = "#Presto.Generator-412" > < span class = "linenos" > 412< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Quantile< / span > < span class = "p" > :< / span > < span class = "n" > _quantile_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-413" > < a href = "#Presto.Generator-413" > < span class = "linenos" > 413< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtract< / span > < span class = "p" > :< / span > < span class = "n" > regexp_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-414" > < a href = "#Presto.Generator-414" > < span class = "linenos" > 414< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpExtractAll< / span > < span class = "p" > :< / span > < span class = "n" > regexp_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-415" > < a href = "#Presto.Generator-415" > < span class = "linenos" > 415< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Right< / span > < span class = "p" > :< / span > < span class = "n" > right_to_substring_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-416" > < a href = "#Presto.Generator-416" > < span class = "linenos" > 416< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SafeDivide< / span > < span class = "p" > :< / span > < span class = "n" > no_safe_divide_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-417" > < a href = "#Presto.Generator-417" > < span class = "linenos" > 417< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > :< / span > < span class = "n" > _schema_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-418" > < a href = "#Presto.Generator-418" > < span class = "linenos" > 418< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SchemaCommentProperty< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > naked_property< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-419" > < a href = "#Presto.Generator-419" > < span class = "linenos" > 419< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-420" > < a href = "#Presto.Generator-420" > < span class = "linenos" > 420< / span > < / a > < span class = "p" > [< / span >
< / span > < span id = "Presto.Generator-421" > < a href = "#Presto.Generator-421" > < span class = "linenos" > 421< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_qualify< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-422" > < a href = "#Presto.Generator-422" > < span class = "linenos" > 422< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_distinct_on< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-423" > < a href = "#Presto.Generator-423" > < span class = "linenos" > 423< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > explode_to_unnest< / span > < span class = "p" > (< / span > < span class = "mi" > 1< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-424" > < a href = "#Presto.Generator-424" > < span class = "linenos" > 424< / span > < / a > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > eliminate_semi_and_anti_joins< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-425" > < a href = "#Presto.Generator-425" > < span class = "linenos" > 425< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator-426" > < a href = "#Presto.Generator-426" > < span class = "linenos" > 426< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-427" > < a href = "#Presto.Generator-427" > < span class = "linenos" > 427< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "p" > :< / span > < span class = "n" > _no_sort_array< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-428" > < a href = "#Presto.Generator-428" > < span class = "linenos" > 428< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "n" > str_position_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > generate_instance< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-429" > < a href = "#Presto.Generator-429" > < span class = "linenos" > 429< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToDate< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / span > < span class = "si" > {< / span > < span class = "n" > _str_to_time_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > e< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-430" > < a href = "#Presto.Generator-430" > < span class = "linenos" > 430< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToMap< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SPLIT_TO_MAP" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-431" > < a href = "#Presto.Generator-431" > < span class = "linenos" > 431< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToTime< / span > < span class = "p" > :< / span > < span class = "n" > _str_to_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-432" > < a href = "#Presto.Generator-432" > < span class = "linenos" > 432< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StructExtract< / span > < span class = "p" > :< / span > < span class = "n" > struct_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-433" > < a href = "#Presto.Generator-433" > < span class = "linenos" > 433< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Table< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > unnest_generate_series< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto.Generator-434" > < a href = "#Presto.Generator-434" > < span class = "linenos" > 434< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Timestamp< / span > < span class = "p" > :< / span > < span class = "n" > no_timestamp_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-435" > < a href = "#Presto.Generator-435" > < span class = "linenos" > 435< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_ADD" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-436" > < a href = "#Presto.Generator-436" > < span class = "linenos" > 436< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampTrunc< / span > < span class = "p" > :< / span > < span class = "n" > timestamptrunc_sql< / span > < span class = "p" > (),< / span >
< / span > < span id = "Presto.Generator-437" > < a href = "#Presto.Generator-437" > < span class = "linenos" > 437< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToDate< / span > < span class = "p" > :< / span > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-438" > < a href = "#Presto.Generator-438" > < span class = "linenos" > 438< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToTime< / span > < span class = "p" > :< / span > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-439" > < a href = "#Presto.Generator-439" > < span class = "linenos" > 439< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToUnix< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-440" > < a href = "#Presto.Generator-440" > < span class = "linenos" > 440< / span > < / a > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > Presto< / span > < span class = "o" > .< / span > < span class = "n" > TIME_FORMAT< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-441" > < a href = "#Presto.Generator-441" > < span class = "linenos" > 441< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-442" > < a href = "#Presto.Generator-442" > < span class = "linenos" > 442< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto.Generator-443" > < a href = "#Presto.Generator-443" > < span class = "linenos" > 443< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeToUnix< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-444" > < a href = "#Presto.Generator-444" > < span class = "linenos" > 444< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ToChar< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )),< / span >
< / span > < span id = "Presto.Generator-445" > < a href = "#Presto.Generator-445" > < span class = "linenos" > 445< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TryCast< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > epoch_cast_to_ts< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto.Generator-446" > < a href = "#Presto.Generator-446" > < span class = "linenos" > 446< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDiToDi< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-447" > < a href = "#Presto.Generator-447" > < span class = "linenos" > 447< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(SUBSTR(REPLACE(CAST(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS VARCHAR), ' -' , ' ' ), 1, 8) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-448" > < a href = "#Presto.Generator-448" > < span class = "linenos" > 448< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_add_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-449" > < a href = "#Presto.Generator-449" > < span class = "linenos" > 449< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsDiff< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_diff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-450" > < a href = "#Presto.Generator-450" > < span class = "linenos" > 450< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsToDate< / span > < span class = "p" > :< / span > < span class = "n" > _ts_or_ds_to_date_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-451" > < a href = "#Presto.Generator-451" > < span class = "linenos" > 451< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Unhex< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " FROM_HEX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-452" > < a href = "#Presto.Generator-452" > < span class = "linenos" > 452< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-453" > < a href = "#Presto.Generator-453" > < span class = "linenos" > 453< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " DATE_FORMAT(FROM_UNIXTIME(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ), < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-454" > < a href = "#Presto.Generator-454" > < span class = "linenos" > 454< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "p" > :< / span > < span class = "n" > _unix_to_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-455" > < a href = "#Presto.Generator-455" > < span class = "linenos" > 455< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTimeStr< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-456" > < a href = "#Presto.Generator-456" > < span class = "linenos" > 456< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(FROM_UNIXTIME(< / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS VARCHAR)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-457" > < a href = "#Presto.Generator-457" > < span class = "linenos" > 457< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > VariancePop< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " VAR_POP" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-458" > < a href = "#Presto.Generator-458" > < span class = "linenos" > 458< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > With< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > ([< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > add_recursive_cte_column_names< / span > < span class = "p" > ]),< / span >
< / span > < span id = "Presto.Generator-459" > < a href = "#Presto.Generator-459" > < span class = "linenos" > 459< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > WithinGroup< / span > < span class = "p" > :< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > preprocess< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-460" > < a href = "#Presto.Generator-460" > < span class = "linenos" > 460< / span > < / a > < span class = "p" > [< / span > < span class = "n" > transforms< / span > < span class = "o" > .< / span > < span class = "n" > remove_within_group_for_percentiles< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator-461" > < a href = "#Presto.Generator-461" > < span class = "linenos" > 461< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-462" > < a href = "#Presto.Generator-462" > < span class = "linenos" > 462< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Xor< / span > < span class = "p" > :< / span > < span class = "n" > bool_xor_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-463" > < a href = "#Presto.Generator-463" > < span class = "linenos" > 463< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MD5" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-464" > < a href = "#Presto.Generator-464" > < span class = "linenos" > 464< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " SHA1" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-465" > < a href = "#Presto.Generator-465" > < span class = "linenos" > 465< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SHA2< / span > < span class = "p" > :< / span > < span class = "n" > sha256_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-466" > < a href = "#Presto.Generator-466" > < span class = "linenos" > 466< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "Presto.Generator-467" > < a href = "#Presto.Generator-467" > < span class = "linenos" > 467< / span > < / a >
< / span > < span id = "Presto.Generator-468" > < a href = "#Presto.Generator-468" > < span class = "linenos" > 468< / span > < / a > < span class = "n" > RESERVED_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "Presto.Generator-469" > < a href = "#Presto.Generator-469" > < span class = "linenos" > 469< / span > < / a > < span class = "s2" > " alter" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-470" > < a href = "#Presto.Generator-470" > < span class = "linenos" > 470< / span > < / a > < span class = "s2" > " and" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-471" > < a href = "#Presto.Generator-471" > < span class = "linenos" > 471< / span > < / a > < span class = "s2" > " as" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-472" > < a href = "#Presto.Generator-472" > < span class = "linenos" > 472< / span > < / a > < span class = "s2" > " between" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-473" > < a href = "#Presto.Generator-473" > < span class = "linenos" > 473< / span > < / a > < span class = "s2" > " by" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-474" > < a href = "#Presto.Generator-474" > < span class = "linenos" > 474< / span > < / a > < span class = "s2" > " case" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-475" > < a href = "#Presto.Generator-475" > < span class = "linenos" > 475< / span > < / a > < span class = "s2" > " cast" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-476" > < a href = "#Presto.Generator-476" > < span class = "linenos" > 476< / span > < / a > < span class = "s2" > " constraint" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-477" > < a href = "#Presto.Generator-477" > < span class = "linenos" > 477< / span > < / a > < span class = "s2" > " create" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-478" > < a href = "#Presto.Generator-478" > < span class = "linenos" > 478< / span > < / a > < span class = "s2" > " cross" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-479" > < a href = "#Presto.Generator-479" > < span class = "linenos" > 479< / span > < / a > < span class = "s2" > " current_time" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-480" > < a href = "#Presto.Generator-480" > < span class = "linenos" > 480< / span > < / a > < span class = "s2" > " current_timestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-481" > < a href = "#Presto.Generator-481" > < span class = "linenos" > 481< / span > < / a > < span class = "s2" > " deallocate" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-482" > < a href = "#Presto.Generator-482" > < span class = "linenos" > 482< / span > < / a > < span class = "s2" > " delete" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-483" > < a href = "#Presto.Generator-483" > < span class = "linenos" > 483< / span > < / a > < span class = "s2" > " describe" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-484" > < a href = "#Presto.Generator-484" > < span class = "linenos" > 484< / span > < / a > < span class = "s2" > " distinct" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-485" > < a href = "#Presto.Generator-485" > < span class = "linenos" > 485< / span > < / a > < span class = "s2" > " drop" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-486" > < a href = "#Presto.Generator-486" > < span class = "linenos" > 486< / span > < / a > < span class = "s2" > " else" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-487" > < a href = "#Presto.Generator-487" > < span class = "linenos" > 487< / span > < / a > < span class = "s2" > " end" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-488" > < a href = "#Presto.Generator-488" > < span class = "linenos" > 488< / span > < / a > < span class = "s2" > " escape" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-489" > < a href = "#Presto.Generator-489" > < span class = "linenos" > 489< / span > < / a > < span class = "s2" > " except" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-490" > < a href = "#Presto.Generator-490" > < span class = "linenos" > 490< / span > < / a > < span class = "s2" > " execute" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-491" > < a href = "#Presto.Generator-491" > < span class = "linenos" > 491< / span > < / a > < span class = "s2" > " exists" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-492" > < a href = "#Presto.Generator-492" > < span class = "linenos" > 492< / span > < / a > < span class = "s2" > " extract" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-493" > < a href = "#Presto.Generator-493" > < span class = "linenos" > 493< / span > < / a > < span class = "s2" > " false" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-494" > < a href = "#Presto.Generator-494" > < span class = "linenos" > 494< / span > < / a > < span class = "s2" > " for" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-495" > < a href = "#Presto.Generator-495" > < span class = "linenos" > 495< / span > < / a > < span class = "s2" > " from" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-496" > < a href = "#Presto.Generator-496" > < span class = "linenos" > 496< / span > < / a > < span class = "s2" > " full" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-497" > < a href = "#Presto.Generator-497" > < span class = "linenos" > 497< / span > < / a > < span class = "s2" > " group" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-498" > < a href = "#Presto.Generator-498" > < span class = "linenos" > 498< / span > < / a > < span class = "s2" > " having" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-499" > < a href = "#Presto.Generator-499" > < span class = "linenos" > 499< / span > < / a > < span class = "s2" > " in" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-500" > < a href = "#Presto.Generator-500" > < span class = "linenos" > 500< / span > < / a > < span class = "s2" > " inner" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-501" > < a href = "#Presto.Generator-501" > < span class = "linenos" > 501< / span > < / a > < span class = "s2" > " insert" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-502" > < a href = "#Presto.Generator-502" > < span class = "linenos" > 502< / span > < / a > < span class = "s2" > " intersect" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-503" > < a href = "#Presto.Generator-503" > < span class = "linenos" > 503< / span > < / a > < span class = "s2" > " into" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-504" > < a href = "#Presto.Generator-504" > < span class = "linenos" > 504< / span > < / a > < span class = "s2" > " is" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-505" > < a href = "#Presto.Generator-505" > < span class = "linenos" > 505< / span > < / a > < span class = "s2" > " join" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-506" > < a href = "#Presto.Generator-506" > < span class = "linenos" > 506< / span > < / a > < span class = "s2" > " left" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-507" > < a href = "#Presto.Generator-507" > < span class = "linenos" > 507< / span > < / a > < span class = "s2" > " like" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-508" > < a href = "#Presto.Generator-508" > < span class = "linenos" > 508< / span > < / a > < span class = "s2" > " natural" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-509" > < a href = "#Presto.Generator-509" > < span class = "linenos" > 509< / span > < / a > < span class = "s2" > " not" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-510" > < a href = "#Presto.Generator-510" > < span class = "linenos" > 510< / span > < / a > < span class = "s2" > " null" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-511" > < a href = "#Presto.Generator-511" > < span class = "linenos" > 511< / span > < / a > < span class = "s2" > " on" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-512" > < a href = "#Presto.Generator-512" > < span class = "linenos" > 512< / span > < / a > < span class = "s2" > " or" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-513" > < a href = "#Presto.Generator-513" > < span class = "linenos" > 513< / span > < / a > < span class = "s2" > " order" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-514" > < a href = "#Presto.Generator-514" > < span class = "linenos" > 514< / span > < / a > < span class = "s2" > " outer" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-515" > < a href = "#Presto.Generator-515" > < span class = "linenos" > 515< / span > < / a > < span class = "s2" > " prepare" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-516" > < a href = "#Presto.Generator-516" > < span class = "linenos" > 516< / span > < / a > < span class = "s2" > " right" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-517" > < a href = "#Presto.Generator-517" > < span class = "linenos" > 517< / span > < / a > < span class = "s2" > " select" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-518" > < a href = "#Presto.Generator-518" > < span class = "linenos" > 518< / span > < / a > < span class = "s2" > " table" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-519" > < a href = "#Presto.Generator-519" > < span class = "linenos" > 519< / span > < / a > < span class = "s2" > " then" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-520" > < a href = "#Presto.Generator-520" > < span class = "linenos" > 520< / span > < / a > < span class = "s2" > " true" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-521" > < a href = "#Presto.Generator-521" > < span class = "linenos" > 521< / span > < / a > < span class = "s2" > " union" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-522" > < a href = "#Presto.Generator-522" > < span class = "linenos" > 522< / span > < / a > < span class = "s2" > " using" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-523" > < a href = "#Presto.Generator-523" > < span class = "linenos" > 523< / span > < / a > < span class = "s2" > " values" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-524" > < a href = "#Presto.Generator-524" > < span class = "linenos" > 524< / span > < / a > < span class = "s2" > " when" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-525" > < a href = "#Presto.Generator-525" > < span class = "linenos" > 525< / span > < / a > < span class = "s2" > " where" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-526" > < a href = "#Presto.Generator-526" > < span class = "linenos" > 526< / span > < / a > < span class = "s2" > " with" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-527" > < a href = "#Presto.Generator-527" > < span class = "linenos" > 527< / span > < / a > < span class = "p" > }< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto.Generator-528" > < a href = "#Presto.Generator-528" > < span class = "linenos" > 528< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto.Generator-529" > < a href = "#Presto.Generator-529" > < span class = "linenos" > 529< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > md5_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-530" > < a href = "#Presto.Generator-530" > < span class = "linenos" > 530< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator-531" > < a href = "#Presto.Generator-531" > < span class = "linenos" > 531< / span > < / a >
< / span > < span id = "Presto.Generator-532" > < a href = "#Presto.Generator-532" > < span class = "linenos" > 532< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-533" > < a href = "#Presto.Generator-533" > < span class = "linenos" > 533< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "Presto.Generator-534" > < a href = "#Presto.Generator-534" > < span class = "linenos" > 534< / span > < / a >
< / span > < span id = "Presto.Generator-535" > < a href = "#Presto.Generator-535" > < span class = "linenos" > 535< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-536" > < a href = "#Presto.Generator-536" > < span class = "linenos" > 536< / span > < / a >
< / span > < span id = "Presto.Generator-537" > < a href = "#Presto.Generator-537" > < span class = "linenos" > 537< / span > < / a > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "o" > *< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT_TYPES< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-538" > < a href = "#Presto.Generator-538" > < span class = "linenos" > 538< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator-539" > < a href = "#Presto.Generator-539" > < span class = "linenos" > 539< / span > < / a >
< / span > < span id = "Presto.Generator-540" > < a href = "#Presto.Generator-540" > < span class = "linenos" > 540< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " LOWER" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_HEX" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " MD5" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))))< / span >
< / span > < span id = "Presto.Generator-541" > < a href = "#Presto.Generator-541" > < span class = "linenos" > 541< / span > < / a >
< / span > < span id = "Presto.Generator-542" > < a href = "#Presto.Generator-542" > < span class = "linenos" > 542< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtounix_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToUnix< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-543" > < a href = "#Presto.Generator-543" > < span class = "linenos" > 543< / span > < / a > < span class = "c1" > # Since `TO_UNIXTIME` requires a `TIMESTAMP`, we need to parse the argument into one.< / span >
< / span > < span id = "Presto.Generator-544" > < a href = "#Presto.Generator-544" > < span class = "linenos" > 544< / span > < / a > < span class = "c1" > # To do this, we first try to `DATE_PARSE` it, but since this can fail when there' s a< / span >
< / span > < span id = "Presto.Generator-545" > < a href = "#Presto.Generator-545" > < span class = "linenos" > 545< / span > < / a > < span class = "c1" > # timezone involved, we wrap it in a `TRY` call and use `PARSE_DATETIME` as a fallback,< / span >
< / span > < span id = "Presto.Generator-546" > < a href = "#Presto.Generator-546" > < span class = "linenos" > 546< / span > < / a > < span class = "c1" > # which seems to be using the same time mapping as Hive, as per:< / span >
< / span > < span id = "Presto.Generator-547" > < a href = "#Presto.Generator-547" > < span class = "linenos" > 547< / span > < / a > < span class = "c1" > # https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html< / span >
< / span > < span id = "Presto.Generator-548" > < a href = "#Presto.Generator-548" > < span class = "linenos" > 548< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator-549" > < a href = "#Presto.Generator-549" > < span class = "linenos" > 549< / span > < / a > < span class = "n" > value_as_text< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-550" > < a href = "#Presto.Generator-550" > < span class = "linenos" > 550< / span > < / a > < span class = "n" > value_as_timestamp< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-551" > < a href = "#Presto.Generator-551" > < span class = "linenos" > 551< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > )< / span > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "k" > else< / span > < span class = "n" > this< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto.Generator-552" > < a href = "#Presto.Generator-552" > < span class = "linenos" > 552< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto.Generator-553" > < a href = "#Presto.Generator-553" > < span class = "linenos" > 553< / span > < / a >
< / span > < span id = "Presto.Generator-554" > < a href = "#Presto.Generator-554" > < span class = "linenos" > 554< / span > < / a > < span class = "n" > parse_without_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_text< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator-555" > < a href = "#Presto.Generator-555" > < span class = "linenos" > 555< / span > < / a >
< / span > < span id = "Presto.Generator-556" > < a href = "#Presto.Generator-556" > < span class = "linenos" > 556< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-557" > < a href = "#Presto.Generator-557" > < span class = "linenos" > 557< / span > < / a > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_timestamp< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-558" > < a href = "#Presto.Generator-558" > < span class = "linenos" > 558< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-559" > < a href = "#Presto.Generator-559" > < span class = "linenos" > 559< / span > < / a > < span class = "n" > parse_with_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-560" > < a href = "#Presto.Generator-560" > < span class = "linenos" > 560< / span > < / a > < span class = "s2" > " PARSE_DATETIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-561" > < a href = "#Presto.Generator-561" > < span class = "linenos" > 561< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-562" > < a href = "#Presto.Generator-562" > < span class = "linenos" > 562< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_MAPPING< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_TRIE< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-563" > < a href = "#Presto.Generator-563" > < span class = "linenos" > 563< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-564" > < a href = "#Presto.Generator-564" > < span class = "linenos" > 564< / span > < / a > < span class = "n" > coalesced< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " COALESCE" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TRY" < / span > < span class = "p" > ,< / span > < span class = "n" > parse_without_tz< / span > < span class = "p" > ),< / span > < span class = "n" > parse_with_tz< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-565" > < a href = "#Presto.Generator-565" > < span class = "linenos" > 565< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ,< / span > < span class = "n" > coalesced< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-566" > < a href = "#Presto.Generator-566" > < span class = "linenos" > 566< / span > < / a >
< / span > < span id = "Presto.Generator-567" > < a href = "#Presto.Generator-567" > < span class = "linenos" > 567< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Bracket< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-568" > < a href = "#Presto.Generator-568" > < span class = "linenos" > 568< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " safe" < / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-569" > < a href = "#Presto.Generator-569" > < span class = "linenos" > 569< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-570" > < a href = "#Presto.Generator-570" > < span class = "linenos" > 570< / span > < / a > < span class = "s2" > " ELEMENT_AT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-571" > < a href = "#Presto.Generator-571" > < span class = "linenos" > 571< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-572" > < a href = "#Presto.Generator-572" > < span class = "linenos" > 572< / span > < / a > < span class = "n" > seq_get< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-573" > < a href = "#Presto.Generator-573" > < span class = "linenos" > 573< / span > < / a > < span class = "n" > apply_index_offset< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-574" > < a href = "#Presto.Generator-574" > < span class = "linenos" > 574< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-575" > < a href = "#Presto.Generator-575" > < span class = "linenos" > 575< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-576" > < a href = "#Presto.Generator-576" > < span class = "linenos" > 576< / span > < / a > < span class = "mi" > 1< / span > < span class = "o" > -< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-577" > < a href = "#Presto.Generator-577" > < span class = "linenos" > 577< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-578" > < a href = "#Presto.Generator-578" > < span class = "linenos" > 578< / span > < / a > < span class = "mi" > 0< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-579" > < a href = "#Presto.Generator-579" > < span class = "linenos" > 579< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-580" > < a href = "#Presto.Generator-580" > < span class = "linenos" > 580< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-581" > < a href = "#Presto.Generator-581" > < span class = "linenos" > 581< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-582" > < a href = "#Presto.Generator-582" > < span class = "linenos" > 582< / span > < / a >
< / span > < span id = "Presto.Generator-583" > < a href = "#Presto.Generator-583" > < span class = "linenos" > 583< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > struct_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-584" > < a href = "#Presto.Generator-584" > < span class = "linenos" > 584< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "Presto.Generator-585" > < a href = "#Presto.Generator-585" > < span class = "linenos" > 585< / span > < / a >
< / span > < span id = "Presto.Generator-586" > < a href = "#Presto.Generator-586" > < span class = "linenos" > 586< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-587" > < a href = "#Presto.Generator-587" > < span class = "linenos" > 587< / span > < / a > < span class = "n" > values< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto.Generator-588" > < a href = "#Presto.Generator-588" > < span class = "linenos" > 588< / span > < / a > < span class = "n" > schema< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto.Generator-589" > < a href = "#Presto.Generator-589" > < span class = "linenos" > 589< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator-590" > < a href = "#Presto.Generator-590" > < span class = "linenos" > 590< / span > < / a >
< / span > < span id = "Presto.Generator-591" > < a href = "#Presto.Generator-591" > < span class = "linenos" > 591< / span > < / a > < span class = "k" > for< / span > < span class = "n" > e< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-592" > < a href = "#Presto.Generator-592" > < span class = "linenos" > 592< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PropertyEQ< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-593" > < a href = "#Presto.Generator-593" > < span class = "linenos" > 593< / span > < / a > < span class = "k" > if< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "ow" > and< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > UNKNOWN< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-594" > < a href = "#Presto.Generator-594" > < span class = "linenos" > 594< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto.Generator-595" > < a href = "#Presto.Generator-595" > < span class = "linenos" > 595< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-596" > < a href = "#Presto.Generator-596" > < span class = "linenos" > 596< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-597" > < a href = "#Presto.Generator-597" > < span class = "linenos" > 597< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator-598" > < a href = "#Presto.Generator-598" > < span class = "linenos" > 598< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-599" > < a href = "#Presto.Generator-599" > < span class = "linenos" > 599< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator-600" > < a href = "#Presto.Generator-600" > < span class = "linenos" > 600< / span > < / a >
< / span > < span id = "Presto.Generator-601" > < a href = "#Presto.Generator-601" > < span class = "linenos" > 601< / span > < / a > < span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-602" > < a href = "#Presto.Generator-602" > < span class = "linenos" > 602< / span > < / a >
< / span > < span id = "Presto.Generator-603" > < a href = "#Presto.Generator-603" > < span class = "linenos" > 603< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > size< / span > < span class = "ow" > or< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "o" > !=< / span > < span class = "n" > size< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-604" > < a href = "#Presto.Generator-604" > < span class = "linenos" > 604< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unknown_type< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-605" > < a href = "#Presto.Generator-605" > < span class = "linenos" > 605< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-606" > < a href = "#Presto.Generator-606" > < span class = "linenos" > 606< / span > < / a > < span class = "s2" > " Cannot convert untyped key-value definitions (try annotate_types)." < / span >
< / span > < span id = "Presto.Generator-607" > < a href = "#Presto.Generator-607" > < span class = "linenos" > 607< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-608" > < a href = "#Presto.Generator-608" > < span class = "linenos" > 608< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ROW" < / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > values< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-609" > < a href = "#Presto.Generator-609" > < span class = "linenos" > 609< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > values< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
< / span > < span id = "Presto.Generator-610" > < a href = "#Presto.Generator-610" > < span class = "linenos" > 610< / span > < / a >
< / span > < span id = "Presto.Generator-611" > < a href = "#Presto.Generator-611" > < span class = "linenos" > 611< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > interval_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-612" > < a href = "#Presto.Generator-612" > < span class = "linenos" > 612< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "ow" > and< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > text< / span > < span class = "p" > (< / span > < span class = "s2" > " unit" < / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " WEEK" < / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-613" > < a href = "#Presto.Generator-613" > < span class = "linenos" > 613< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "si" > }< / span > < span class = "s2" > * INTERVAL ' 7' DAY)" < / span >
< / span > < span id = "Presto.Generator-614" > < a href = "#Presto.Generator-614" > < span class = "linenos" > 614< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > interval_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-615" > < a href = "#Presto.Generator-615" > < span class = "linenos" > 615< / span > < / a >
< / span > < span id = "Presto.Generator-616" > < a href = "#Presto.Generator-616" > < span class = "linenos" > 616< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > transaction_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Transaction< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-617" > < a href = "#Presto.Generator-617" > < span class = "linenos" > 617< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " modes" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-618" > < a href = "#Presto.Generator-618" > < span class = "linenos" > 618< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > modes< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "k" > if< / span > < span class = "n" > modes< / span > < span class = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "Presto.Generator-619" > < a href = "#Presto.Generator-619" > < span class = "linenos" > 619< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " START TRANSACTION< / span > < span class = "si" > {< / span > < span class = "n" > modes< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "Presto.Generator-620" > < a href = "#Presto.Generator-620" > < span class = "linenos" > 620< / span > < / a >
< / span > < span id = "Presto.Generator-621" > < a href = "#Presto.Generator-621" > < span class = "linenos" > 621< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > offset_limit_modifiers< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-622" > < a href = "#Presto.Generator-622" > < span class = "linenos" > 622< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > ,< / span > < span class = "n" > fetch< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "p" > ,< / span > < span class = "n" > limit< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Fetch< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Limit< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator-623" > < a href = "#Presto.Generator-623" > < span class = "linenos" > 623< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]:< / span >
< / span > < span id = "Presto.Generator-624" > < a href = "#Presto.Generator-624" > < span class = "linenos" > 624< / span > < / a > < span class = "k" > return< / span > < span class = "p" > [< / span >
< / span > < span id = "Presto.Generator-625" > < a href = "#Presto.Generator-625" > < span class = "linenos" > 625< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-626" > < a href = "#Presto.Generator-626" > < span class = "linenos" > 626< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > limit< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-627" > < a href = "#Presto.Generator-627" > < span class = "linenos" > 627< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator-628" > < a href = "#Presto.Generator-628" > < span class = "linenos" > 628< / span > < / a >
< / span > < span id = "Presto.Generator-629" > < a href = "#Presto.Generator-629" > < span class = "linenos" > 629< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > create_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Create< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-630" > < a href = "#Presto.Generator-630" > < span class = "linenos" > 630< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator-631" > < a href = "#Presto.Generator-631" > < span class = "linenos" > 631< / span > < / a > < span class = "sd" > Presto doesn' t support CREATE VIEW with expressions (ex: `CREATE VIEW x (cola)` then `(cola)` is the expression),< / span >
< / span > < span id = "Presto.Generator-632" > < a href = "#Presto.Generator-632" > < span class = "linenos" > 632< / span > < / a > < span class = "sd" > so we need to remove them< / span >
< / span > < span id = "Presto.Generator-633" > < a href = "#Presto.Generator-633" > < span class = "linenos" > 633< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator-634" > < a href = "#Presto.Generator-634" > < span class = "linenos" > 634< / span > < / a > < span class = "n" > kind< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " kind" < / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator-635" > < a href = "#Presto.Generator-635" > < span class = "linenos" > 635< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator-636" > < a href = "#Presto.Generator-636" > < span class = "linenos" > 636< / span > < / a > < span class = "k" > if< / span > < span class = "n" > kind< / span > < span class = "o" > ==< / span > < span class = "s2" > " VIEW" < / span > < span class = "ow" > and< / span > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-637" > < a href = "#Presto.Generator-637" > < span class = "linenos" > 637< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expressions" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-638" > < a href = "#Presto.Generator-638" > < span class = "linenos" > 638< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > create_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-639" > < a href = "#Presto.Generator-639" > < span class = "linenos" > 639< / span > < / a >
< / span > < span id = "Presto.Generator-640" > < a href = "#Presto.Generator-640" > < span class = "linenos" > 640< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > delete_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-641" > < a href = "#Presto.Generator-641" > < span class = "linenos" > 641< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator-642" > < a href = "#Presto.Generator-642" > < span class = "linenos" > 642< / span > < / a > < span class = "sd" > Presto only supports DELETE FROM for a single table without an alias, so we need< / span >
< / span > < span id = "Presto.Generator-643" > < a href = "#Presto.Generator-643" > < span class = "linenos" > 643< / span > < / a > < span class = "sd" > to remove the unnecessary parts. If the original DELETE statement contains more< / span >
< / span > < span id = "Presto.Generator-644" > < a href = "#Presto.Generator-644" > < span class = "linenos" > 644< / span > < / a > < span class = "sd" > than one table to be deleted, we can' t safely map it 1-1 to a Presto statement.< / span >
< / span > < span id = "Presto.Generator-645" > < a href = "#Presto.Generator-645" > < span class = "linenos" > 645< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator-646" > < a href = "#Presto.Generator-646" > < span class = "linenos" > 646< / span > < / a > < span class = "n" > tables< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "p" > [< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator-647" > < a href = "#Presto.Generator-647" > < span class = "linenos" > 647< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > tables< / span > < span class = "p" > )< / span > < span class = "o" > > < / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-648" > < a href = "#Presto.Generator-648" > < span class = "linenos" > 648< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-649" > < a href = "#Presto.Generator-649" > < span class = "linenos" > 649< / span > < / a >
< / span > < span id = "Presto.Generator-650" > < a href = "#Presto.Generator-650" > < span class = "linenos" > 650< / span > < / a > < span class = "n" > table< / span > < span class = "o" > =< / span > < span class = "n" > tables< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator-651" > < a href = "#Presto.Generator-651" > < span class = "linenos" > 651< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " this" < / span > < span class = "p" > ,< / span > < span class = "n" > table< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-652" > < a href = "#Presto.Generator-652" > < span class = "linenos" > 652< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto.Generator-653" > < a href = "#Presto.Generator-653" > < span class = "linenos" > 653< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto.Generator-654" > < a href = "#Presto.Generator-654" > < span class = "linenos" > 654< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > table< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Table< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-655" > < a href = "#Presto.Generator-655" > < span class = "linenos" > 655< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > =< / span > < span class = "n" > table< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-656" > < a href = "#Presto.Generator-656" > < span class = "linenos" > 656< / span > < / a > < span class = "k" > if< / span > < span class = "n" > table_alias< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-657" > < a href = "#Presto.Generator-657" > < span class = "linenos" > 657< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / span >
< / span > < span id = "Presto.Generator-658" > < a href = "#Presto.Generator-658" > < span class = "linenos" > 658< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > transform< / span > < span class = "p" > (< / span > < span class = "n" > unqualify_columns< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator-659" > < a href = "#Presto.Generator-659" > < span class = "linenos" > 659< / span > < / a >
< / span > < span id = "Presto.Generator-660" > < a href = "#Presto.Generator-660" > < span class = "linenos" > 660< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-661" > < a href = "#Presto.Generator-661" > < span class = "linenos" > 661< / span > < / a >
< / span > < span id = "Presto.Generator-662" > < a href = "#Presto.Generator-662" > < span class = "linenos" > 662< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > jsonextract_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-663" > < a href = "#Presto.Generator-663" > < span class = "linenos" > 663< / span > < / a > < span class = "n" > is_json_extract< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > settings< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract_is_json_extract" < / span > < span class = "p" > ,< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-664" > < a href = "#Presto.Generator-664" > < span class = "linenos" > 664< / span > < / a >
< / span > < span id = "Presto.Generator-665" > < a href = "#Presto.Generator-665" > < span class = "linenos" > 665< / span > < / a > < span class = "c1" > # Generate JSON_EXTRACT unless the user has configured that a Snowflake / Databricks< / span >
< / span > < span id = "Presto.Generator-666" > < a href = "#Presto.Generator-666" > < span class = "linenos" > 666< / span > < / a > < span class = "c1" > # VARIANT extract (e.g. col:x.y) should map to dot notation (i.e ROW access) in Presto/Trino< / span >
< / span > < span id = "Presto.Generator-667" > < a href = "#Presto.Generator-667" > < span class = "linenos" > 667< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > is_json_extract< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-668" > < a href = "#Presto.Generator-668" > < span class = "linenos" > 668< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-669" > < a href = "#Presto.Generator-669" > < span class = "linenos" > 669< / span > < / a > < span class = "s2" > " JSON_EXTRACT" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span >
< / span > < span id = "Presto.Generator-670" > < a href = "#Presto.Generator-670" > < span class = "linenos" > 670< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-671" > < a href = "#Presto.Generator-671" > < span class = "linenos" > 671< / span > < / a >
< / span > < span id = "Presto.Generator-672" > < a href = "#Presto.Generator-672" > < span class = "linenos" > 672< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-673" > < a href = "#Presto.Generator-673" > < span class = "linenos" > 673< / span > < / a >
< / span > < span id = "Presto.Generator-674" > < a href = "#Presto.Generator-674" > < span class = "linenos" > 674< / span > < / a > < span class = "c1" > # Convert the JSONPath extraction `JSON_EXTRACT(col, ' $.x.y) to a ROW access col.x.y< / span >
< / span > < span id = "Presto.Generator-675" > < a href = "#Presto.Generator-675" > < span class = "linenos" > 675< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto.Generator-676" > < a href = "#Presto.Generator-676" > < span class = "linenos" > 676< / span > < / a > < span class = "k" > for< / span > < span class = "n" > path_key< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > :]:< / span >
< / span > < span id = "Presto.Generator-677" > < a href = "#Presto.Generator-677" > < span class = "linenos" > 677< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > path_key< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathKey< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-678" > < a href = "#Presto.Generator-678" > < span class = "linenos" > 678< / span > < / a > < span class = "c1" > # Cannot transpile subscripts, wildcards etc to dot notation< / span >
< / span > < span id = "Presto.Generator-679" > < a href = "#Presto.Generator-679" > < span class = "linenos" > 679< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-680" > < a href = "#Presto.Generator-680" > < span class = "linenos" > 680< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Cannot transpile JSONPath segment ' < / span > < span class = "si" > {< / span > < span class = "n" > path_key< / span > < span class = "si" > }< / span > < span class = "s2" > ' to ROW access" < / span >
< / span > < span id = "Presto.Generator-681" > < a href = "#Presto.Generator-681" > < span class = "linenos" > 681< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-682" > < a href = "#Presto.Generator-682" > < span class = "linenos" > 682< / span > < / a > < span class = "k" > continue< / span >
< / span > < span id = "Presto.Generator-683" > < a href = "#Presto.Generator-683" > < span class = "linenos" > 683< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "n" > path_key< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator-684" > < a href = "#Presto.Generator-684" > < span class = "linenos" > 684< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SAFE_IDENTIFIER_RE< / span > < span class = "o" > .< / span > < span class = "n" > match< / span > < span class = "p" > (< / span > < span class = "n" > key< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator-685" > < a href = "#Presto.Generator-685" > < span class = "linenos" > 685< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s1" > ' " < / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s1" > " ' < / span >
< / span > < span id = "Presto.Generator-686" > < a href = "#Presto.Generator-686" > < span class = "linenos" > 686< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " .< / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-687" > < a href = "#Presto.Generator-687" > < span class = "linenos" > 687< / span > < / a >
< / span > < span id = "Presto.Generator-688" > < a href = "#Presto.Generator-688" > < span class = "linenos" > 688< / span > < / a > < span class = "n" > expr< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > segments< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator-689" > < a href = "#Presto.Generator-689" > < span class = "linenos" > 689< / span > < / a >
< / span > < span id = "Presto.Generator-690" > < a href = "#Presto.Generator-690" > < span class = "linenos" > 690< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }{< / span > < span class = "n" > expr< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "Presto.Generator-691" > < a href = "#Presto.Generator-691" > < span class = "linenos" > 691< / span > < / a >
< / span > < span id = "Presto.Generator-692" > < a href = "#Presto.Generator-692" > < span class = "linenos" > 692< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > groupconcat_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GroupConcat< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator-693" > < a href = "#Presto.Generator-693" > < span class = "linenos" > 693< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator-694" > < a href = "#Presto.Generator-694" > < span class = "linenos" > 694< / span > < / a > < span class = "s2" > " ARRAY_JOIN" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator-695" > < a href = "#Presto.Generator-695" > < span class = "linenos" > 695< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_AGG" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-696" > < a href = "#Presto.Generator-696" > < span class = "linenos" > 696< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " separator" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator-697" > < a href = "#Presto.Generator-697" > < span class = "linenos" > 697< / span > < / a > < span class = "p" > )< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
2025-02-13 16:00:51 +01:00
< div class = "docstring" > < p > Generator converts a given syntax tree to the corresponding SQL string.< / p >
2025-02-13 15:23:26 +01:00
< h6 id = "arguments" > Arguments:< / h6 >
< ul >
2025-02-13 21:29:39 +01:00
< li > < strong > pretty:< / strong > Whether to format the produced SQL string.
2025-02-13 16:00:51 +01:00
Default: False.< / li >
< li > < strong > identify:< / strong > Determines when an identifier should be quoted. Possible values are:
False (default): Never quote, except in cases where it's mandatory by the dialect.
True or 'always': Always quote.
'safe': Only quote identifiers that are case insensitive.< / li >
2025-02-13 21:29:39 +01:00
< li > < strong > normalize:< / strong > Whether to normalize identifiers to lowercase.
2025-02-13 16:00:51 +01:00
Default: False.< / li >
2025-02-13 21:30:28 +01:00
< li > < strong > pad:< / strong > The pad size in a formatted string. For example, this affects the indentation of
a projection in a query, relative to its nesting level.
2025-02-13 16:00:51 +01:00
Default: 2.< / li >
2025-02-13 21:30:28 +01:00
< li > < strong > indent:< / strong > The indentation size in a formatted string. For example, this affects the
indentation of subqueries and filters under a < code > WHERE< / code > clause.
2025-02-13 16:00:51 +01:00
Default: 2.< / li >
2025-02-13 21:29:39 +01:00
< li > < strong > normalize_functions:< / strong > How to normalize function names. Possible values are:
2025-02-13 16:00:51 +01:00
"upper" or True (default): Convert names to uppercase.
"lower": Convert names to lowercase.
False: Disables function name normalization.< / li >
< li > < strong > unsupported_level:< / strong > Determines the generator's behavior when it encounters unsupported expressions.
Default ErrorLevel.WARN.< / li >
< li > < strong > max_unsupported:< / strong > Maximum number of unsupported messages to include in a raised UnsupportedError.
2025-02-13 15:23:26 +01:00
This is only relevant if unsupported_level is ErrorLevel.RAISE.
Default: 3< / li >
2025-02-13 21:29:39 +01:00
< li > < strong > leading_comma:< / strong > Whether the comma is leading or trailing in select expressions.
2025-02-13 16:00:51 +01:00
This is only relevant when generating in pretty mode.
2025-02-13 15:23:26 +01:00
Default: False< / li >
< li > < strong > max_text_width:< / strong > The max number of characters in a segment before creating new lines in pretty mode.
The default is on the smaller end because the length only represents a segment and not the true
line length.
Default: 80< / li >
2025-02-13 21:29:39 +01:00
< li > < strong > comments:< / strong > Whether to preserve comments in the output SQL code.
2025-02-13 15:23:26 +01:00
Default: True< / li >
< / ul >
< / div >
2025-02-13 20:15:27 +01:00
< div id = "Presto.Generator.INTERVAL_ALLOWS_PLURAL_FORM" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INTERVAL_ALLOWS_PLURAL_FORM< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.INTERVAL_ALLOWS_PLURAL_FORM" > < / a >
< / div >
< div id = "Presto.Generator.JOIN_HINTS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > JOIN_HINTS< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.JOIN_HINTS" > < / a >
< / div >
< div id = "Presto.Generator.TABLE_HINTS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TABLE_HINTS< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.TABLE_HINTS" > < / a >
2025-02-13 20:43:05 +01:00
< / div >
< div id = "Presto.Generator.QUERY_HINTS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > QUERY_HINTS< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.QUERY_HINTS" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.Generator.IS_BOOL_ALLOWED" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > IS_BOOL_ALLOWED< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.IS_BOOL_ALLOWED" > < / a >
2025-02-13 20:58:22 +01:00
< / div >
< div id = "Presto.Generator.TZ_TO_WITH_TIME_ZONE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TZ_TO_WITH_TIME_ZONE< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.TZ_TO_WITH_TIME_ZONE" > < / a >
< / div >
< div id = "Presto.Generator.NVL2_SUPPORTED" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > NVL2_SUPPORTED< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.NVL2_SUPPORTED" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.Generator.STRUCT_DELIMITER" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > STRUCT_DELIMITER< / span > =
< span class = "default_value" > (' (' , ' )' )< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.STRUCT_DELIMITER" > < / a >
2025-02-13 21:09:41 +01:00
< / div >
< div id = "Presto.Generator.LIMIT_ONLY_LITERALS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > LIMIT_ONLY_LITERALS< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.LIMIT_ONLY_LITERALS" > < / a >
2025-02-13 21:17:51 +01:00
< / div >
< div id = "Presto.Generator.SUPPORTS_SINGLE_ARG_CONCAT" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_SINGLE_ARG_CONCAT< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.SUPPORTS_SINGLE_ARG_CONCAT" > < / a >
2025-02-13 21:20:36 +01:00
< / div >
< div id = "Presto.Generator.LIKE_PROPERTY_INSIDE_SCHEMA" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > LIKE_PROPERTY_INSIDE_SCHEMA< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.LIKE_PROPERTY_INSIDE_SCHEMA" > < / a >
2025-02-13 21:21:45 +01:00
< / div >
< div id = "Presto.Generator.MULTI_ARG_DISTINCT" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > MULTI_ARG_DISTINCT< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.MULTI_ARG_DISTINCT" > < / a >
2025-02-13 21:30:28 +01:00
< / div >
< div id = "Presto.Generator.SUPPORTS_TO_NUMBER" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_TO_NUMBER< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.SUPPORTS_TO_NUMBER" > < / a >
2025-02-13 21:35:32 +01:00
< / div >
< div id = "Presto.Generator.HEX_FUNC" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > HEX_FUNC< / span > =
< span class = "default_value" > ' TO_HEX' < / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.HEX_FUNC" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "Presto.Generator.PARSE_JSON_NAME" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > PARSE_JSON_NAME< / span > =
< span class = "default_value" > ' JSON_PARSE' < / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.PARSE_JSON_NAME" > < / a >
2025-02-13 21:43:00 +01:00
< / div >
< div id = "Presto.Generator.PAD_FILL_PATTERN_IS_REQUIRED" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > PAD_FILL_PATTERN_IS_REQUIRED< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.PAD_FILL_PATTERN_IS_REQUIRED" > < / a >
2025-02-13 21:54:13 +01:00
< / div >
< div id = "Presto.Generator.EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE" > < / a >
2025-02-13 21:56:38 +01:00
< / div >
< div id = "Presto.Generator.SUPPORTS_MEDIAN" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_MEDIAN< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.SUPPORTS_MEDIAN" > < / a >
2025-02-13 21:57:20 +01:00
< / div >
< div id = "Presto.Generator.ARRAY_SIZE_NAME" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > ARRAY_SIZE_NAME< / span > =
< span class = "default_value" > ' CARDINALITY' < / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.ARRAY_SIZE_NAME" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.Generator.PROPERTIES_LOCATION" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > PROPERTIES_LOCATION< / span > =
< input id = "Presto.Generator.PROPERTIES_LOCATION-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:56:19 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Generator.PROPERTIES_LOCATION-view-value" > < / label > < span class = "default_value" > {< class ' < a href = "../expressions.html#AllowedValuesProperty" > sqlglot.expressions.AllowedValuesProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#AlgorithmProperty" > sqlglot.expressions.AlgorithmProperty< / a > ' > : < Location.POST_CREATE: ' POST_CREATE' > , < class ' < a href = "../expressions.html#AutoIncrementProperty" > sqlglot.expressions.AutoIncrementProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#AutoRefreshProperty" > sqlglot.expressions.AutoRefreshProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#BackupProperty" > sqlglot.expressions.BackupProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#BlockCompressionProperty" > sqlglot.expressions.BlockCompressionProperty< / a > ' > : < Location.POST_NAME: ' POST_NAME' > , < class ' < a href = "../expressions.html#CharacterSetProperty" > sqlglot.expressions.CharacterSetProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#ChecksumProperty" > sqlglot.expressions.ChecksumProperty< / a > ' > : < Location.POST_NAME: ' POST_NAME' > , < class ' < a href = "../expressions.html#CollateProperty" > sqlglot.expressions.CollateProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#CopyGrantsProperty" > sqlglot.expressions.CopyGrantsProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#Cluster" > sqlglot.expressions.Cluster< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#ClusteredByProperty" > sqlglot.expressions.ClusteredByProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#DistributedByProperty" > sqlglot.expressions.DistributedByProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#DuplicateKeyProperty" > sqlglot.expressions.DuplicateKeyProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#DataBlocksizeProperty" > sqlglot.expressions.DataBlocksizeProperty< / a > ' > : < Location.POST_NAME: ' POST_NAME' > , < class ' < a href = "../expressions.html#DataDeletionProperty" > sqlglot.expressions.DataDeletionProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#DefinerProperty" > sqlglot.expressions.DefinerProperty< / a > ' > : < Location.POST_CREATE: ' POST_CREATE' > , < class ' < a href = "../expressions.html#DictRange" > sqlglot.expressions.DictRange< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#DictProperty" > sqlglot.expressions.DictProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#DynamicProperty" > sqlglot.expressions.DynamicProperty< / a > ' > : < Location.POST_CREATE: ' POST_CREATE' > , < class ' < a href = "../expressions.html#DistKeyProperty" > sqlglot.expressions.DistKeyProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#DistStyleProperty" > sqlglot.expressions.DistStyleProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#EmptyProperty" > sqlglot.expressions.EmptyProperty< / a > ' > : < Location.POST_SCHEMA: ' POST_SCHEMA' > , < class ' < a href = "../expressions.html#EngineProperty" > sqlglot.expressions.EngineProperty< / a > &
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Generator.PROPERTIES_LOCATION" > < / a >
< / div >
< div id = "Presto.Generator.TYPE_MAPPING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TYPE_MAPPING< / span > =
< input id = "Presto.Generator.TYPE_MAPPING-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:56:38 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Generator.TYPE_MAPPING-view-value" > < / label > < span class = "default_value" > {< Type.NCHAR: ' NCHAR' > : ' CHAR' , < Type.NVARCHAR: ' NVARCHAR' > : ' VARCHAR' , < Type.MEDIUMTEXT: ' MEDIUMTEXT' > : ' TEXT' , < Type.LONGTEXT: ' LONGTEXT' > : ' TEXT' , < Type.TINYTEXT: ' TINYTEXT' > : ' TEXT' , < Type.MEDIUMBLOB: ' MEDIUMBLOB' > : ' BLOB' , < Type.LONGBLOB: ' LONGBLOB' > : ' BLOB' , < Type.TINYBLOB: ' TINYBLOB' > : ' BLOB' , < Type.INET: ' INET' > : ' INET' , < Type.ROWVERSION: ' ROWVERSION' > : ' VARBINARY' , < Type.BINARY: ' BINARY' > : ' VARBINARY' , < Type.BIT: ' BIT' > : ' BOOLEAN' , < Type.DATETIME: ' DATETIME' > : ' TIMESTAMP' , < Type.DATETIME64: ' DATETIME64' > : ' TIMESTAMP' , < Type.FLOAT: ' FLOAT' > : ' REAL' , < Type.HLLSKETCH: ' HLLSKETCH' > : ' HYPERLOGLOG' , < Type.INT: ' INT' > : ' INTEGER' , < Type.STRUCT: ' STRUCT' > : ' ROW' , < Type.TEXT: ' TEXT' > : ' VARCHAR' , < Type.TIMESTAMPTZ: ' TIMESTAMPTZ' > : ' TIMESTAMP' , < Type.TIMESTAMPNTZ: ' TIMESTAMPNTZ' > : ' TIMESTAMP' , < Type.TIMETZ: ' TIMETZ' > : ' TIME' }< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Generator.TYPE_MAPPING" > < / a >
< / div >
< div id = "Presto.Generator.TRANSFORMS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TRANSFORMS< / span > =
< input id = "Presto.Generator.TRANSFORMS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:57:20 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Generator.TRANSFORMS-view-value" > < / label > < span class = "default_value" > {< class ' < a href = "../expressions.html#JSONPathFilter" > sqlglot.expressions.JSONPathFilter< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathKey" > sqlglot.expressions.JSONPathKey< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathRecursive" > sqlglot.expressions.JSONPathRecursive< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathRoot" > sqlglot.expressions.JSONPathRoot< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathScript" > sqlglot.expressions.JSONPathScript< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathSelector" > sqlglot.expressions.JSONPathSelector< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathSlice" > sqlglot.expressions.JSONPathSlice< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathSubscript" > sqlglot.expressions.JSONPathSubscript< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathUnion" > sqlglot.expressions.JSONPathUnion< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathWildcard" > sqlglot.expressions.JSONPathWildcard< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#AllowedValuesProperty" > sqlglot.expressions.AllowedValuesProperty< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#ArrayContainsAll" > sqlglot.expressions.ArrayContainsAll< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#ArrayOverlaps" > sqlglot.expressions.ArrayOverlaps< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#AutoRefreshProperty" > sqlglot.expressions.AutoRefreshProperty< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#BackupProperty" > sqlglot.expressions.BackupProperty< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#CaseSpecificColumnConstraint" > sqlglot.expressions.CaseSpecificColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#CharacterSetColumnConstraint" > sqlglot.expressions.CharacterSetColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#CharacterSetProperty" > sqlglot.expressions.CharacterSetProperty< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#ClusteredColumnConstraint" > sqlglot.expressions.ClusteredColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#CollateColumnConstraint" > sqlglot.expressions.CollateColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#CommentColumnConstraint" > sqlglot.expressions.CommentColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#ConnectByRoot" > sqlglot.expressions.ConnectByRoot< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#CopyGrantsProperty" > sqlglot.expressions.CopyGrantsProperty< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#DateFormatColumnConstraint" > sqlglot.expressions.DateFormatColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#DefaultColumnConstraint" > sqlglot.expressions.DefaultColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#Dynami
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Generator.TRANSFORMS" > < / a >
2025-02-13 21:32:41 +01:00
< / div >
< div id = "Presto.Generator.RESERVED_KEYWORDS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > RESERVED_KEYWORDS< / span > =
< input id = "Presto.Generator.RESERVED_KEYWORDS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:57:37 +01:00
< label class = "view-value-button pdoc-button" for = "Presto.Generator.RESERVED_KEYWORDS-view-value" > < / label > < span class = "default_value" > {' like' , ' null' , ' union' , ' insert' , ' except' , ' in' , ' deallocate' , ' intersect' , ' on' , ' where' , ' full' , ' into' , ' from' , ' when' , ' escape' , ' between' , ' inner' , ' create' , ' cast' , ' case' , ' end' , ' constraint' , ' exists' , ' having' , ' true' , ' or' , ' for' , ' is' , ' prepare' , ' using' , ' by' , ' cross' , ' select' , ' as' , ' natural' , ' drop' , ' current_timestamp' , ' then' , ' right' , ' alter' , ' current_time' , ' table' , ' execute' , ' outer' , ' values' , ' join' , ' and' , ' false' , ' group' , ' order' , ' with' , ' not' , ' delete' , ' describe' , ' else' , ' distinct' , ' extract' , ' left' }< / span >
2025-02-13 21:32:41 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Generator.RESERVED_KEYWORDS" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "Presto.Generator.md5_sql" class = "classattr" >
< input id = "Presto.Generator.md5_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > md5_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#MD5" > sqlglot.expressions.MD5< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.md5_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.md5_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.md5_sql-529" > < a href = "#Presto.Generator.md5_sql-529" > < span class = "linenos" > 529< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > md5_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.md5_sql-530" > < a href = "#Presto.Generator.md5_sql-530" > < span class = "linenos" > 530< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator.md5_sql-531" > < a href = "#Presto.Generator.md5_sql-531" > < span class = "linenos" > 531< / span > < / a >
< / span > < span id = "Presto.Generator.md5_sql-532" > < a href = "#Presto.Generator.md5_sql-532" > < span class = "linenos" > 532< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.md5_sql-533" > < a href = "#Presto.Generator.md5_sql-533" > < span class = "linenos" > 533< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "Presto.Generator.md5_sql-534" > < a href = "#Presto.Generator.md5_sql-534" > < span class = "linenos" > 534< / span > < / a >
< / span > < span id = "Presto.Generator.md5_sql-535" > < a href = "#Presto.Generator.md5_sql-535" > < span class = "linenos" > 535< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.md5_sql-536" > < a href = "#Presto.Generator.md5_sql-536" > < span class = "linenos" > 536< / span > < / a >
< / span > < span id = "Presto.Generator.md5_sql-537" > < a href = "#Presto.Generator.md5_sql-537" > < span class = "linenos" > 537< / span > < / a > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "o" > *< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT_TYPES< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.md5_sql-538" > < a href = "#Presto.Generator.md5_sql-538" > < span class = "linenos" > 538< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Encode< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > charset< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "o" > .< / span > < span class = "n" > string< / span > < span class = "p" > (< / span > < span class = "s2" > " utf-8" < / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator.md5_sql-539" > < a href = "#Presto.Generator.md5_sql-539" > < span class = "linenos" > 539< / span > < / a >
< / span > < span id = "Presto.Generator.md5_sql-540" > < a href = "#Presto.Generator.md5_sql-540" > < span class = "linenos" > 540< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " LOWER" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_HEX" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " MD5" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))))< / span >
2025-02-13 21:41:14 +01:00
< / span > < / pre > < / div >
2025-02-13 21:30:28 +01:00
< / div >
< div id = "Presto.Generator.strtounix_sql" class = "classattr" >
< input id = "Presto.Generator.strtounix_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > strtounix_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#StrToUnix" > sqlglot.expressions.StrToUnix< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.strtounix_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.strtounix_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.strtounix_sql-542" > < a href = "#Presto.Generator.strtounix_sql-542" > < span class = "linenos" > 542< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtounix_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToUnix< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-543" > < a href = "#Presto.Generator.strtounix_sql-543" > < span class = "linenos" > 543< / span > < / a > < span class = "c1" > # Since `TO_UNIXTIME` requires a `TIMESTAMP`, we need to parse the argument into one.< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-544" > < a href = "#Presto.Generator.strtounix_sql-544" > < span class = "linenos" > 544< / span > < / a > < span class = "c1" > # To do this, we first try to `DATE_PARSE` it, but since this can fail when there' s a< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-545" > < a href = "#Presto.Generator.strtounix_sql-545" > < span class = "linenos" > 545< / span > < / a > < span class = "c1" > # timezone involved, we wrap it in a `TRY` call and use `PARSE_DATETIME` as a fallback,< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-546" > < a href = "#Presto.Generator.strtounix_sql-546" > < span class = "linenos" > 546< / span > < / a > < span class = "c1" > # which seems to be using the same time mapping as Hive, as per:< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-547" > < a href = "#Presto.Generator.strtounix_sql-547" > < span class = "linenos" > 547< / span > < / a > < span class = "c1" > # https://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-548" > < a href = "#Presto.Generator.strtounix_sql-548" > < span class = "linenos" > 548< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-549" > < a href = "#Presto.Generator.strtounix_sql-549" > < span class = "linenos" > 549< / span > < / a > < span class = "n" > value_as_text< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-550" > < a href = "#Presto.Generator.strtounix_sql-550" > < span class = "linenos" > 550< / span > < / a > < span class = "n" > value_as_timestamp< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-551" > < a href = "#Presto.Generator.strtounix_sql-551" > < span class = "linenos" > 551< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > )< / span > < span class = "k" > if< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "k" > else< / span > < span class = "n" > this< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto.Generator.strtounix_sql-552" > < a href = "#Presto.Generator.strtounix_sql-552" > < span class = "linenos" > 552< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto.Generator.strtounix_sql-553" > < a href = "#Presto.Generator.strtounix_sql-553" > < span class = "linenos" > 553< / span > < / a >
< / span > < span id = "Presto.Generator.strtounix_sql-554" > < a href = "#Presto.Generator.strtounix_sql-554" > < span class = "linenos" > 554< / span > < / a > < span class = "n" > parse_without_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_PARSE" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_text< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-555" > < a href = "#Presto.Generator.strtounix_sql-555" > < span class = "linenos" > 555< / span > < / a >
< / span > < span id = "Presto.Generator.strtounix_sql-556" > < a href = "#Presto.Generator.strtounix_sql-556" > < span class = "linenos" > 556< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-557" > < a href = "#Presto.Generator.strtounix_sql-557" > < span class = "linenos" > 557< / span > < / a > < span class = "s2" > " DATE_FORMAT" < / span > < span class = "p" > ,< / span > < span class = "n" > value_as_timestamp< / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-558" > < a href = "#Presto.Generator.strtounix_sql-558" > < span class = "linenos" > 558< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-559" > < a href = "#Presto.Generator.strtounix_sql-559" > < span class = "linenos" > 559< / span > < / a > < span class = "n" > parse_with_tz< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-560" > < a href = "#Presto.Generator.strtounix_sql-560" > < span class = "linenos" > 560< / span > < / a > < span class = "s2" > " PARSE_DATETIME" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-561" > < a href = "#Presto.Generator.strtounix_sql-561" > < span class = "linenos" > 561< / span > < / a > < span class = "n" > formatted_value< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-562" > < a href = "#Presto.Generator.strtounix_sql-562" > < span class = "linenos" > 562< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > format_time< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_MAPPING< / span > < span class = "p" > ,< / span > < span class = "n" > Hive< / span > < span class = "o" > .< / span > < span class = "n" > INVERSE_TIME_TRIE< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-563" > < a href = "#Presto.Generator.strtounix_sql-563" > < span class = "linenos" > 563< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-564" > < a href = "#Presto.Generator.strtounix_sql-564" > < span class = "linenos" > 564< / span > < / a > < span class = "n" > coalesced< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " COALESCE" < / span > < span class = "p" > ,< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TRY" < / span > < span class = "p" > ,< / span > < span class = "n" > parse_without_tz< / span > < span class = "p" > ),< / span > < span class = "n" > parse_with_tz< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.strtounix_sql-565" > < a href = "#Presto.Generator.strtounix_sql-565" > < span class = "linenos" > 565< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " TO_UNIXTIME" < / span > < span class = "p" > ,< / span > < span class = "n" > coalesced< / span > < span class = "p" > )< / span >
2025-02-13 21:30:28 +01:00
< / span > < / pre > < / div >
2025-02-13 21:17:09 +01:00
< / div >
< div id = "Presto.Generator.bracket_sql" class = "classattr" >
< input id = "Presto.Generator.bracket_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > bracket_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#Bracket" > sqlglot.expressions.Bracket< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.bracket_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.bracket_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.bracket_sql-567" > < a href = "#Presto.Generator.bracket_sql-567" > < span class = "linenos" > 567< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Bracket< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.bracket_sql-568" > < a href = "#Presto.Generator.bracket_sql-568" > < span class = "linenos" > 568< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " safe" < / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.bracket_sql-569" > < a href = "#Presto.Generator.bracket_sql-569" > < span class = "linenos" > 569< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.bracket_sql-570" > < a href = "#Presto.Generator.bracket_sql-570" > < span class = "linenos" > 570< / span > < / a > < span class = "s2" > " ELEMENT_AT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.bracket_sql-571" > < a href = "#Presto.Generator.bracket_sql-571" > < span class = "linenos" > 571< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.bracket_sql-572" > < a href = "#Presto.Generator.bracket_sql-572" > < span class = "linenos" > 572< / span > < / a > < span class = "n" > seq_get< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.bracket_sql-573" > < a href = "#Presto.Generator.bracket_sql-573" > < span class = "linenos" > 573< / span > < / a > < span class = "n" > apply_index_offset< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.bracket_sql-574" > < a href = "#Presto.Generator.bracket_sql-574" > < span class = "linenos" > 574< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.bracket_sql-575" > < a href = "#Presto.Generator.bracket_sql-575" > < span class = "linenos" > 575< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.bracket_sql-576" > < a href = "#Presto.Generator.bracket_sql-576" > < span class = "linenos" > 576< / span > < / a > < span class = "mi" > 1< / span > < span class = "o" > -< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ,< / span > < span class = "mi" > 0< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.bracket_sql-577" > < a href = "#Presto.Generator.bracket_sql-577" > < span class = "linenos" > 577< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.bracket_sql-578" > < a href = "#Presto.Generator.bracket_sql-578" > < span class = "linenos" > 578< / span > < / a > < span class = "mi" > 0< / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.bracket_sql-579" > < a href = "#Presto.Generator.bracket_sql-579" > < span class = "linenos" > 579< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.bracket_sql-580" > < a href = "#Presto.Generator.bracket_sql-580" > < span class = "linenos" > 580< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.bracket_sql-581" > < a href = "#Presto.Generator.bracket_sql-581" > < span class = "linenos" > 581< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > bracket_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:17:09 +01:00
< / span > < / pre > < / div >
2025-02-13 21:03:38 +01:00
< / div >
< div id = "Presto.Generator.struct_sql" class = "classattr" >
< input id = "Presto.Generator.struct_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > struct_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#Struct" > sqlglot.expressions.Struct< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.struct_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.struct_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.struct_sql-583" > < a href = "#Presto.Generator.struct_sql-583" > < span class = "linenos" > 583< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > struct_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.struct_sql-584" > < a href = "#Presto.Generator.struct_sql-584" > < span class = "linenos" > 584< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.optimizer.annotate_types< / span > < span class = "kn" > import< / span > < span class = "n" > annotate_types< / span >
< / span > < span id = "Presto.Generator.struct_sql-585" > < a href = "#Presto.Generator.struct_sql-585" > < span class = "linenos" > 585< / span > < / a >
< / span > < span id = "Presto.Generator.struct_sql-586" > < a href = "#Presto.Generator.struct_sql-586" > < span class = "linenos" > 586< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.struct_sql-587" > < a href = "#Presto.Generator.struct_sql-587" > < span class = "linenos" > 587< / span > < / a > < span class = "n" > values< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto.Generator.struct_sql-588" > < a href = "#Presto.Generator.struct_sql-588" > < span class = "linenos" > 588< / span > < / a > < span class = "n" > schema< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto.Generator.struct_sql-589" > < a href = "#Presto.Generator.struct_sql-589" > < span class = "linenos" > 589< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "Presto.Generator.struct_sql-590" > < a href = "#Presto.Generator.struct_sql-590" > < span class = "linenos" > 590< / span > < / a >
< / span > < span id = "Presto.Generator.struct_sql-591" > < a href = "#Presto.Generator.struct_sql-591" > < span class = "linenos" > 591< / span > < / a > < span class = "k" > for< / span > < span class = "n" > e< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.struct_sql-592" > < a href = "#Presto.Generator.struct_sql-592" > < span class = "linenos" > 592< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PropertyEQ< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.struct_sql-593" > < a href = "#Presto.Generator.struct_sql-593" > < span class = "linenos" > 593< / span > < / a > < span class = "k" > if< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "ow" > and< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > UNKNOWN< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.struct_sql-594" > < a href = "#Presto.Generator.struct_sql-594" > < span class = "linenos" > 594< / span > < / a > < span class = "n" > unknown_type< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "Presto.Generator.struct_sql-595" > < a href = "#Presto.Generator.struct_sql-595" > < span class = "linenos" > 595< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.struct_sql-596" > < a href = "#Presto.Generator.struct_sql-596" > < span class = "linenos" > 596< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "s1" > ' this' < / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > < / span > < span class = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.struct_sql-597" > < a href = "#Presto.Generator.struct_sql-597" > < span class = "linenos" > 597< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator.struct_sql-598" > < a href = "#Presto.Generator.struct_sql-598" > < span class = "linenos" > 598< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.struct_sql-599" > < a href = "#Presto.Generator.struct_sql-599" > < span class = "linenos" > 599< / span > < / a > < span class = "n" > values< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator.struct_sql-600" > < a href = "#Presto.Generator.struct_sql-600" > < span class = "linenos" > 600< / span > < / a >
< / span > < span id = "Presto.Generator.struct_sql-601" > < a href = "#Presto.Generator.struct_sql-601" > < span class = "linenos" > 601< / span > < / a > < span class = "n" > size< / span > < span class = "o" > =< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.struct_sql-602" > < a href = "#Presto.Generator.struct_sql-602" > < span class = "linenos" > 602< / span > < / a >
< / span > < span id = "Presto.Generator.struct_sql-603" > < a href = "#Presto.Generator.struct_sql-603" > < span class = "linenos" > 603< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > size< / span > < span class = "ow" > or< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "o" > !=< / span > < span class = "n" > size< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.struct_sql-604" > < a href = "#Presto.Generator.struct_sql-604" > < span class = "linenos" > 604< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unknown_type< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.struct_sql-605" > < a href = "#Presto.Generator.struct_sql-605" > < span class = "linenos" > 605< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.struct_sql-606" > < a href = "#Presto.Generator.struct_sql-606" > < span class = "linenos" > 606< / span > < / a > < span class = "s2" > " Cannot convert untyped key-value definitions (try annotate_types)." < / span >
< / span > < span id = "Presto.Generator.struct_sql-607" > < a href = "#Presto.Generator.struct_sql-607" > < span class = "linenos" > 607< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.struct_sql-608" > < a href = "#Presto.Generator.struct_sql-608" > < span class = "linenos" > 608< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ROW" < / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > values< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.struct_sql-609" > < a href = "#Presto.Generator.struct_sql-609" > < span class = "linenos" > 609< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > values< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ) AS ROW(< / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > schema< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
2025-02-13 21:03:38 +01:00
< / span > < / pre > < / div >
2025-02-13 20:15:27 +01:00
< / div >
2025-02-13 15:52:09 +01:00
< div id = "Presto.Generator.interval_sql" class = "classattr" >
< input id = "Presto.Generator.interval_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > interval_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#Interval" > sqlglot.expressions.Interval< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.interval_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.interval_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.interval_sql-611" > < a href = "#Presto.Generator.interval_sql-611" > < span class = "linenos" > 611< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > interval_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.interval_sql-612" > < a href = "#Presto.Generator.interval_sql-612" > < span class = "linenos" > 612< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "ow" > and< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > text< / span > < span class = "p" > (< / span > < span class = "s2" > " unit" < / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > upper< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " WEEK" < / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.interval_sql-613" > < a href = "#Presto.Generator.interval_sql-613" > < span class = "linenos" > 613< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "si" > }< / span > < span class = "s2" > * INTERVAL ' 7' DAY)" < / span >
< / span > < span id = "Presto.Generator.interval_sql-614" > < a href = "#Presto.Generator.interval_sql-614" > < span class = "linenos" > 614< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > interval_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 15:52:09 +01:00
< / span > < / pre > < / div >
< / div >
2025-02-13 15:23:26 +01:00
< div id = "Presto.Generator.transaction_sql" class = "classattr" >
< input id = "Presto.Generator.transaction_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
2025-02-13 15:52:09 +01:00
< span class = "name" > transaction_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#Transaction" > sqlglot.expressions.Transaction< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
2025-02-13 15:23:26 +01:00
< label class = "view-source-button" for = "Presto.Generator.transaction_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.transaction_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.transaction_sql-616" > < a href = "#Presto.Generator.transaction_sql-616" > < span class = "linenos" > 616< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > transaction_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Transaction< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.transaction_sql-617" > < a href = "#Presto.Generator.transaction_sql-617" > < span class = "linenos" > 617< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " modes" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.transaction_sql-618" > < a href = "#Presto.Generator.transaction_sql-618" > < span class = "linenos" > 618< / span > < / a > < span class = "n" > modes< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "s1" > ' , ' < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > modes< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "k" > if< / span > < span class = "n" > modes< / span > < span class = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "Presto.Generator.transaction_sql-619" > < a href = "#Presto.Generator.transaction_sql-619" > < span class = "linenos" > 619< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " START TRANSACTION< / span > < span class = "si" > {< / span > < span class = "n" > modes< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
2025-02-13 16:00:51 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "Presto.Generator.offset_limit_modifiers" class = "classattr" >
< input id = "Presto.Generator.offset_limit_modifiers-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > offset_limit_modifiers< / span > < span class = "signature pdoc-code multiline" > (< span class = "param" > < span class = "bp" > self< / span > ,< / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#Expression" > sqlglot.expressions.Expression< / a > < / span > ,< / span > < span class = "param" > < span class = "n" > fetch< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > ,< / span > < span class = "param" > < span class = "n" > limit< / span > < span class = "p" > :< / span > < span class = "n" > Union< / span > < span class = "p" > [< / span > < span class = "n" > < a href = "../expressions.html#Fetch" > sqlglot.expressions.Fetch< / a > < / span > < span class = "p" > ,< / span > < span class = "n" > < a href = "../expressions.html#Limit" > sqlglot.expressions.Limit< / a > < / span > < span class = "p" > ,< / span > < span class = "n" > NoneType< / span > < span class = "p" > ]< / span > < / span > < span class = "return-annotation" > ) -> < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.offset_limit_modifiers-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.offset_limit_modifiers" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.offset_limit_modifiers-621" > < a href = "#Presto.Generator.offset_limit_modifiers-621" > < span class = "linenos" > 621< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > offset_limit_modifiers< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.offset_limit_modifiers-622" > < a href = "#Presto.Generator.offset_limit_modifiers-622" > < span class = "linenos" > 622< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < span class = "p" > ,< / span > < span class = "n" > fetch< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "p" > ,< / span > < span class = "n" > limit< / span > < span class = "p" > :< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Fetch< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Limit< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator.offset_limit_modifiers-623" > < a href = "#Presto.Generator.offset_limit_modifiers-623" > < span class = "linenos" > 623< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]:< / span >
< / span > < span id = "Presto.Generator.offset_limit_modifiers-624" > < a href = "#Presto.Generator.offset_limit_modifiers-624" > < span class = "linenos" > 624< / span > < / a > < span class = "k" > return< / span > < span class = "p" > [< / span >
< / span > < span id = "Presto.Generator.offset_limit_modifiers-625" > < a href = "#Presto.Generator.offset_limit_modifiers-625" > < span class = "linenos" > 625< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " offset" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.offset_limit_modifiers-626" > < a href = "#Presto.Generator.offset_limit_modifiers-626" > < span class = "linenos" > 626< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > limit< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.offset_limit_modifiers-627" > < a href = "#Presto.Generator.offset_limit_modifiers-627" > < span class = "linenos" > 627< / span > < / a > < span class = "p" > ]< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
2025-02-13 21:09:41 +01:00
< / div >
< div id = "Presto.Generator.create_sql" class = "classattr" >
< input id = "Presto.Generator.create_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > create_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#Create" > sqlglot.expressions.Create< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.create_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.create_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.create_sql-629" > < a href = "#Presto.Generator.create_sql-629" > < span class = "linenos" > 629< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > create_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Create< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.create_sql-630" > < a href = "#Presto.Generator.create_sql-630" > < span class = "linenos" > 630< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator.create_sql-631" > < a href = "#Presto.Generator.create_sql-631" > < span class = "linenos" > 631< / span > < / a > < span class = "sd" > Presto doesn' t support CREATE VIEW with expressions (ex: `CREATE VIEW x (cola)` then `(cola)` is the expression),< / span >
< / span > < span id = "Presto.Generator.create_sql-632" > < a href = "#Presto.Generator.create_sql-632" > < span class = "linenos" > 632< / span > < / a > < span class = "sd" > so we need to remove them< / span >
< / span > < span id = "Presto.Generator.create_sql-633" > < a href = "#Presto.Generator.create_sql-633" > < span class = "linenos" > 633< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator.create_sql-634" > < a href = "#Presto.Generator.create_sql-634" > < span class = "linenos" > 634< / span > < / a > < span class = "n" > kind< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " kind" < / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator.create_sql-635" > < a href = "#Presto.Generator.create_sql-635" > < span class = "linenos" > 635< / span > < / a > < span class = "n" > schema< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator.create_sql-636" > < a href = "#Presto.Generator.create_sql-636" > < span class = "linenos" > 636< / span > < / a > < span class = "k" > if< / span > < span class = "n" > kind< / span > < span class = "o" > ==< / span > < span class = "s2" > " VIEW" < / span > < span class = "ow" > and< / span > < span class = "n" > schema< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.create_sql-637" > < a href = "#Presto.Generator.create_sql-637" > < span class = "linenos" > 637< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expressions" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.create_sql-638" > < a href = "#Presto.Generator.create_sql-638" > < span class = "linenos" > 638< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > create_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:09:41 +01:00
< / span > < / pre > < / div >
< div class = "docstring" > < p > Presto doesn't support CREATE VIEW with expressions (ex: < code > CREATE VIEW x (cola)< / code > then < code > (cola)< / code > is the expression),
so we need to remove them< / p >
< / div >
2025-02-13 21:35:32 +01:00
< / div >
< div id = "Presto.Generator.delete_sql" class = "classattr" >
< input id = "Presto.Generator.delete_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > delete_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#Delete" > sqlglot.expressions.Delete< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.delete_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.delete_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.delete_sql-640" > < a href = "#Presto.Generator.delete_sql-640" > < span class = "linenos" > 640< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > delete_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.delete_sql-641" > < a href = "#Presto.Generator.delete_sql-641" > < span class = "linenos" > 641< / span > < / a > < span class = "w" > < / span > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator.delete_sql-642" > < a href = "#Presto.Generator.delete_sql-642" > < span class = "linenos" > 642< / span > < / a > < span class = "sd" > Presto only supports DELETE FROM for a single table without an alias, so we need< / span >
< / span > < span id = "Presto.Generator.delete_sql-643" > < a href = "#Presto.Generator.delete_sql-643" > < span class = "linenos" > 643< / span > < / a > < span class = "sd" > to remove the unnecessary parts. If the original DELETE statement contains more< / span >
< / span > < span id = "Presto.Generator.delete_sql-644" > < a href = "#Presto.Generator.delete_sql-644" > < span class = "linenos" > 644< / span > < / a > < span class = "sd" > than one table to be deleted, we can' t safely map it 1-1 to a Presto statement.< / span >
< / span > < span id = "Presto.Generator.delete_sql-645" > < a href = "#Presto.Generator.delete_sql-645" > < span class = "linenos" > 645< / span > < / a > < span class = "sd" > " " " < / span >
< / span > < span id = "Presto.Generator.delete_sql-646" > < a href = "#Presto.Generator.delete_sql-646" > < span class = "linenos" > 646< / span > < / a > < span class = "n" > tables< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "p" > [< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator.delete_sql-647" > < a href = "#Presto.Generator.delete_sql-647" > < span class = "linenos" > 647< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > tables< / span > < span class = "p" > )< / span > < span class = "o" > > < / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.delete_sql-648" > < a href = "#Presto.Generator.delete_sql-648" > < span class = "linenos" > 648< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.delete_sql-649" > < a href = "#Presto.Generator.delete_sql-649" > < span class = "linenos" > 649< / span > < / a >
< / span > < span id = "Presto.Generator.delete_sql-650" > < a href = "#Presto.Generator.delete_sql-650" > < span class = "linenos" > 650< / span > < / a > < span class = "n" > table< / span > < span class = "o" > =< / span > < span class = "n" > tables< / span > < span class = "p" > [< / span > < span class = "mi" > 0< / span > < span class = "p" > ]< / span >
< / span > < span id = "Presto.Generator.delete_sql-651" > < a href = "#Presto.Generator.delete_sql-651" > < span class = "linenos" > 651< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " this" < / span > < span class = "p" > ,< / span > < span class = "n" > table< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.delete_sql-652" > < a href = "#Presto.Generator.delete_sql-652" > < span class = "linenos" > 652< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " tables" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "Presto.Generator.delete_sql-653" > < a href = "#Presto.Generator.delete_sql-653" > < span class = "linenos" > 653< / span > < / a >
2025-02-13 21:57:20 +01:00
< / span > < span id = "Presto.Generator.delete_sql-654" > < a href = "#Presto.Generator.delete_sql-654" > < span class = "linenos" > 654< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > table< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Table< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.delete_sql-655" > < a href = "#Presto.Generator.delete_sql-655" > < span class = "linenos" > 655< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > =< / span > < span class = "n" > table< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.delete_sql-656" > < a href = "#Presto.Generator.delete_sql-656" > < span class = "linenos" > 656< / span > < / a > < span class = "k" > if< / span > < span class = "n" > table_alias< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.delete_sql-657" > < a href = "#Presto.Generator.delete_sql-657" > < span class = "linenos" > 657< / span > < / a > < span class = "n" > table_alias< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / span >
< / span > < span id = "Presto.Generator.delete_sql-658" > < a href = "#Presto.Generator.delete_sql-658" > < span class = "linenos" > 658< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > cast< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Delete< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > transform< / span > < span class = "p" > (< / span > < span class = "n" > unqualify_columns< / span > < span class = "p" > ))< / span >
< / span > < span id = "Presto.Generator.delete_sql-659" > < a href = "#Presto.Generator.delete_sql-659" > < span class = "linenos" > 659< / span > < / a >
< / span > < span id = "Presto.Generator.delete_sql-660" > < a href = "#Presto.Generator.delete_sql-660" > < span class = "linenos" > 660< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > delete_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:35:32 +01:00
< / span > < / pre > < / div >
< div class = "docstring" > < p > Presto only supports DELETE FROM for a single table without an alias, so we need
to remove the unnecessary parts. If the original DELETE statement contains more
than one table to be deleted, we can't safely map it 1-1 to a Presto statement.< / p >
< / div >
2025-02-13 21:55:40 +01:00
< / div >
< div id = "Presto.Generator.jsonextract_sql" class = "classattr" >
< input id = "Presto.Generator.jsonextract_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > jsonextract_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#JSONExtract" > sqlglot.expressions.JSONExtract< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.jsonextract_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.jsonextract_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.jsonextract_sql-662" > < a href = "#Presto.Generator.jsonextract_sql-662" > < span class = "linenos" > 662< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > jsonextract_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-663" > < a href = "#Presto.Generator.jsonextract_sql-663" > < span class = "linenos" > 663< / span > < / a > < span class = "n" > is_json_extract< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > settings< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract_is_json_extract" < / span > < span class = "p" > ,< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-664" > < a href = "#Presto.Generator.jsonextract_sql-664" > < span class = "linenos" > 664< / span > < / a >
< / span > < span id = "Presto.Generator.jsonextract_sql-665" > < a href = "#Presto.Generator.jsonextract_sql-665" > < span class = "linenos" > 665< / span > < / a > < span class = "c1" > # Generate JSON_EXTRACT unless the user has configured that a Snowflake / Databricks< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-666" > < a href = "#Presto.Generator.jsonextract_sql-666" > < span class = "linenos" > 666< / span > < / a > < span class = "c1" > # VARIANT extract (e.g. col:x.y) should map to dot notation (i.e ROW access) in Presto/Trino< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-667" > < a href = "#Presto.Generator.jsonextract_sql-667" > < span class = "linenos" > 667< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " variant_extract" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > is_json_extract< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-668" > < a href = "#Presto.Generator.jsonextract_sql-668" > < span class = "linenos" > 668< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-669" > < a href = "#Presto.Generator.jsonextract_sql-669" > < span class = "linenos" > 669< / span > < / a > < span class = "s2" > " JSON_EXTRACT" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "o" > *< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-670" > < a href = "#Presto.Generator.jsonextract_sql-670" > < span class = "linenos" > 670< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-671" > < a href = "#Presto.Generator.jsonextract_sql-671" > < span class = "linenos" > 671< / span > < / a >
< / span > < span id = "Presto.Generator.jsonextract_sql-672" > < a href = "#Presto.Generator.jsonextract_sql-672" > < span class = "linenos" > 672< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-673" > < a href = "#Presto.Generator.jsonextract_sql-673" > < span class = "linenos" > 673< / span > < / a >
< / span > < span id = "Presto.Generator.jsonextract_sql-674" > < a href = "#Presto.Generator.jsonextract_sql-674" > < span class = "linenos" > 674< / span > < / a > < span class = "c1" > # Convert the JSONPath extraction `JSON_EXTRACT(col, ' $.x.y) to a ROW access col.x.y< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-675" > < a href = "#Presto.Generator.jsonextract_sql-675" > < span class = "linenos" > 675< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-676" > < a href = "#Presto.Generator.jsonextract_sql-676" > < span class = "linenos" > 676< / span > < / a > < span class = "k" > for< / span > < span class = "n" > path_key< / span > < span class = "ow" > in< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > [< / span > < span class = "mi" > 1< / span > < span class = "p" > :]:< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-677" > < a href = "#Presto.Generator.jsonextract_sql-677" > < span class = "linenos" > 677< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > path_key< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathKey< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-678" > < a href = "#Presto.Generator.jsonextract_sql-678" > < span class = "linenos" > 678< / span > < / a > < span class = "c1" > # Cannot transpile subscripts, wildcards etc to dot notation< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-679" > < a href = "#Presto.Generator.jsonextract_sql-679" > < span class = "linenos" > 679< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-680" > < a href = "#Presto.Generator.jsonextract_sql-680" > < span class = "linenos" > 680< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Cannot transpile JSONPath segment ' < / span > < span class = "si" > {< / span > < span class = "n" > path_key< / span > < span class = "si" > }< / span > < span class = "s2" > ' to ROW access" < / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-681" > < a href = "#Presto.Generator.jsonextract_sql-681" > < span class = "linenos" > 681< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-682" > < a href = "#Presto.Generator.jsonextract_sql-682" > < span class = "linenos" > 682< / span > < / a > < span class = "k" > continue< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-683" > < a href = "#Presto.Generator.jsonextract_sql-683" > < span class = "linenos" > 683< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "n" > path_key< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-684" > < a href = "#Presto.Generator.jsonextract_sql-684" > < span class = "linenos" > 684< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SAFE_IDENTIFIER_RE< / span > < span class = "o" > .< / span > < span class = "n" > match< / span > < span class = "p" > (< / span > < span class = "n" > key< / span > < span class = "p" > ):< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-685" > < a href = "#Presto.Generator.jsonextract_sql-685" > < span class = "linenos" > 685< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s1" > ' " < / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s1" > " ' < / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-686" > < a href = "#Presto.Generator.jsonextract_sql-686" > < span class = "linenos" > 686< / span > < / a > < span class = "n" > segments< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span > < span class = "sa" > f< / span > < span class = "s2" > " .< / span > < span class = "si" > {< / span > < span class = "n" > key< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-687" > < a href = "#Presto.Generator.jsonextract_sql-687" > < span class = "linenos" > 687< / span > < / a >
< / span > < span id = "Presto.Generator.jsonextract_sql-688" > < a href = "#Presto.Generator.jsonextract_sql-688" > < span class = "linenos" > 688< / span > < / a > < span class = "n" > expr< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "o" > .< / span > < span class = "n" > join< / span > < span class = "p" > (< / span > < span class = "n" > segments< / span > < span class = "p" > )< / span >
< / span > < span id = "Presto.Generator.jsonextract_sql-689" > < a href = "#Presto.Generator.jsonextract_sql-689" > < span class = "linenos" > 689< / span > < / a >
< / span > < span id = "Presto.Generator.jsonextract_sql-690" > < a href = "#Presto.Generator.jsonextract_sql-690" > < span class = "linenos" > 690< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }{< / span > < span class = "n" > expr< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
2025-02-13 21:56:19 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "Presto.Generator.groupconcat_sql" class = "classattr" >
< input id = "Presto.Generator.groupconcat_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< span class = "def" > def< / span >
< span class = "name" > groupconcat_sql< / span > < span class = "signature pdoc-code condensed" > (< span class = "param" > < span class = "bp" > self< / span > , < / span > < span class = "param" > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > < a href = "../expressions.html#GroupConcat" > sqlglot.expressions.GroupConcat< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "Presto.Generator.groupconcat_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#Presto.Generator.groupconcat_sql" > < / a >
2025-02-13 21:57:20 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "Presto.Generator.groupconcat_sql-692" > < a href = "#Presto.Generator.groupconcat_sql-692" > < span class = "linenos" > 692< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > groupconcat_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GroupConcat< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "Presto.Generator.groupconcat_sql-693" > < a href = "#Presto.Generator.groupconcat_sql-693" > < span class = "linenos" > 693< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span >
< / span > < span id = "Presto.Generator.groupconcat_sql-694" > < a href = "#Presto.Generator.groupconcat_sql-694" > < span class = "linenos" > 694< / span > < / a > < span class = "s2" > " ARRAY_JOIN" < / span > < span class = "p" > ,< / span >
< / span > < span id = "Presto.Generator.groupconcat_sql-695" > < a href = "#Presto.Generator.groupconcat_sql-695" > < span class = "linenos" > 695< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_AGG" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.groupconcat_sql-696" > < a href = "#Presto.Generator.groupconcat_sql-696" > < span class = "linenos" > 696< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > get< / span > < span class = "p" > (< / span > < span class = "s2" > " separator" < / span > < span class = "p" > ),< / span >
< / span > < span id = "Presto.Generator.groupconcat_sql-697" > < a href = "#Presto.Generator.groupconcat_sql-697" > < span class = "linenos" > 697< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:55:40 +01:00
< / span > < / pre > < / div >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "Presto.Generator.SELECT_KINDS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SELECT_KINDS< / span > < span class = "annotation" > : Tuple[str, ...]< / span > =
< span class = "default_value" > ()< / span >
< / div >
< a class = "headerlink" href = "#Presto.Generator.SELECT_KINDS" > < / a >
2025-02-13 21:30:28 +01:00
< / div >
< div id = "Presto.Generator.AFTER_HAVING_MODIFIER_TRANSFORMS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > AFTER_HAVING_MODIFIER_TRANSFORMS< / span > =
2025-02-13 21:43:00 +01:00
< span class = "default_value" > {' windows' : < function Generator.< lambda> > , ' qualify' : < function Generator.< lambda> > }< / span >
2025-02-13 21:30:28 +01:00
< / div >
< a class = "headerlink" href = "#Presto.Generator.AFTER_HAVING_MODIFIER_TRANSFORMS" > < / a >
2025-02-13 15:23:26 +01:00
< / div >
< div class = "inherited" >
< h5 > Inherited Members< / h5 >
< dl >
< div > < dt > < a href = "../generator.html#Generator" > sqlglot.generator.Generator< / a > < / dt >
< dd id = "Presto.Generator.__init__" class = "function" > < a href = "../generator.html#Generator.__init__" > Generator< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.NULL_ORDERING_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.NULL_ORDERING_SUPPORTED" > NULL_ORDERING_SUPPORTED< / a > < / dd >
2025-02-13 21:20:36 +01:00
< dd id = "Presto.Generator.IGNORE_NULLS_IN_FUNC" class = "variable" > < a href = "../generator.html#Generator.IGNORE_NULLS_IN_FUNC" > IGNORE_NULLS_IN_FUNC< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.LOCKING_READS_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.LOCKING_READS_SUPPORTED" > LOCKING_READS_SUPPORTED< / a > < / dd >
< dd id = "Presto.Generator.WRAP_DERIVED_VALUES" class = "variable" > < a href = "../generator.html#Generator.WRAP_DERIVED_VALUES" > WRAP_DERIVED_VALUES< / a > < / dd >
< dd id = "Presto.Generator.CREATE_FUNCTION_RETURN_AS" class = "variable" > < a href = "../generator.html#Generator.CREATE_FUNCTION_RETURN_AS" > CREATE_FUNCTION_RETURN_AS< / a > < / dd >
< dd id = "Presto.Generator.MATCHED_BY_SOURCE" class = "variable" > < a href = "../generator.html#Generator.MATCHED_BY_SOURCE" > MATCHED_BY_SOURCE< / a > < / dd >
< dd id = "Presto.Generator.SINGLE_STRING_INTERVAL" class = "variable" > < a href = "../generator.html#Generator.SINGLE_STRING_INTERVAL" > SINGLE_STRING_INTERVAL< / a > < / dd >
< dd id = "Presto.Generator.LIMIT_FETCH" class = "variable" > < a href = "../generator.html#Generator.LIMIT_FETCH" > LIMIT_FETCH< / a > < / dd >
< dd id = "Presto.Generator.RENAME_TABLE_WITH_DB" class = "variable" > < a href = "../generator.html#Generator.RENAME_TABLE_WITH_DB" > RENAME_TABLE_WITH_DB< / a > < / dd >
< dd id = "Presto.Generator.GROUPINGS_SEP" class = "variable" > < a href = "../generator.html#Generator.GROUPINGS_SEP" > GROUPINGS_SEP< / a > < / dd >
< dd id = "Presto.Generator.INDEX_ON" class = "variable" > < a href = "../generator.html#Generator.INDEX_ON" > INDEX_ON< / a > < / dd >
2025-02-13 20:43:05 +01:00
< dd id = "Presto.Generator.QUERY_HINT_SEP" class = "variable" > < a href = "../generator.html#Generator.QUERY_HINT_SEP" > QUERY_HINT_SEP< / a > < / dd >
< dd id = "Presto.Generator.DUPLICATE_KEY_UPDATE_WITH_SET" class = "variable" > < a href = "../generator.html#Generator.DUPLICATE_KEY_UPDATE_WITH_SET" > DUPLICATE_KEY_UPDATE_WITH_SET< / a > < / dd >
< dd id = "Presto.Generator.LIMIT_IS_TOP" class = "variable" > < a href = "../generator.html#Generator.LIMIT_IS_TOP" > LIMIT_IS_TOP< / a > < / dd >
2025-02-13 20:45:52 +01:00
< dd id = "Presto.Generator.RETURNING_END" class = "variable" > < a href = "../generator.html#Generator.RETURNING_END" > RETURNING_END< / a > < / dd >
2025-02-13 20:48:36 +01:00
< dd id = "Presto.Generator.EXTRACT_ALLOWS_QUOTES" class = "variable" > < a href = "../generator.html#Generator.EXTRACT_ALLOWS_QUOTES" > EXTRACT_ALLOWS_QUOTES< / a > < / dd >
< dd id = "Presto.Generator.VALUES_AS_TABLE" class = "variable" > < a href = "../generator.html#Generator.VALUES_AS_TABLE" > VALUES_AS_TABLE< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.ALTER_TABLE_INCLUDE_COLUMN_KEYWORD" class = "variable" > < a href = "../generator.html#Generator.ALTER_TABLE_INCLUDE_COLUMN_KEYWORD" > ALTER_TABLE_INCLUDE_COLUMN_KEYWORD< / a > < / dd >
2025-02-13 21:03:38 +01:00
< dd id = "Presto.Generator.UNNEST_WITH_ORDINALITY" class = "variable" > < a href = "../generator.html#Generator.UNNEST_WITH_ORDINALITY" > UNNEST_WITH_ORDINALITY< / a > < / dd >
< dd id = "Presto.Generator.AGGREGATE_FILTER_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.AGGREGATE_FILTER_SUPPORTED" > AGGREGATE_FILTER_SUPPORTED< / a > < / dd >
< dd id = "Presto.Generator.SEMI_ANTI_JOIN_WITH_SIDE" class = "variable" > < a href = "../generator.html#Generator.SEMI_ANTI_JOIN_WITH_SIDE" > SEMI_ANTI_JOIN_WITH_SIDE< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Generator.COMPUTED_COLUMN_WITH_TYPE" class = "variable" > < a href = "../generator.html#Generator.COMPUTED_COLUMN_WITH_TYPE" > COMPUTED_COLUMN_WITH_TYPE< / a > < / dd >
< dd id = "Presto.Generator.SUPPORTS_TABLE_COPY" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_TABLE_COPY" > SUPPORTS_TABLE_COPY< / a > < / dd >
< dd id = "Presto.Generator.TABLESAMPLE_REQUIRES_PARENS" class = "variable" > < a href = "../generator.html#Generator.TABLESAMPLE_REQUIRES_PARENS" > TABLESAMPLE_REQUIRES_PARENS< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.TABLESAMPLE_SIZE_IS_ROWS" class = "variable" > < a href = "../generator.html#Generator.TABLESAMPLE_SIZE_IS_ROWS" > TABLESAMPLE_SIZE_IS_ROWS< / a > < / dd >
< dd id = "Presto.Generator.TABLESAMPLE_KEYWORDS" class = "variable" > < a href = "../generator.html#Generator.TABLESAMPLE_KEYWORDS" > TABLESAMPLE_KEYWORDS< / a > < / dd >
< dd id = "Presto.Generator.TABLESAMPLE_WITH_METHOD" class = "variable" > < a href = "../generator.html#Generator.TABLESAMPLE_WITH_METHOD" > TABLESAMPLE_WITH_METHOD< / a > < / dd >
< dd id = "Presto.Generator.TABLESAMPLE_SEED_KEYWORD" class = "variable" > < a href = "../generator.html#Generator.TABLESAMPLE_SEED_KEYWORD" > TABLESAMPLE_SEED_KEYWORD< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Generator.COLLATE_IS_FUNC" class = "variable" > < a href = "../generator.html#Generator.COLLATE_IS_FUNC" > COLLATE_IS_FUNC< / a > < / dd >
< dd id = "Presto.Generator.DATA_TYPE_SPECIFIERS_ALLOWED" class = "variable" > < a href = "../generator.html#Generator.DATA_TYPE_SPECIFIERS_ALLOWED" > DATA_TYPE_SPECIFIERS_ALLOWED< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.ENSURE_BOOLS" class = "variable" > < a href = "../generator.html#Generator.ENSURE_BOOLS" > ENSURE_BOOLS< / a > < / dd >
2025-02-13 21:16:09 +01:00
< dd id = "Presto.Generator.CTE_RECURSIVE_KEYWORD_REQUIRED" class = "variable" > < a href = "../generator.html#Generator.CTE_RECURSIVE_KEYWORD_REQUIRED" > CTE_RECURSIVE_KEYWORD_REQUIRED< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.LAST_DAY_SUPPORTS_DATE_PART" class = "variable" > < a href = "../generator.html#Generator.LAST_DAY_SUPPORTS_DATE_PART" > LAST_DAY_SUPPORTS_DATE_PART< / a > < / dd >
< dd id = "Presto.Generator.SUPPORTS_TABLE_ALIAS_COLUMNS" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_TABLE_ALIAS_COLUMNS" > SUPPORTS_TABLE_ALIAS_COLUMNS< / a > < / dd >
< dd id = "Presto.Generator.UNPIVOT_ALIASES_ARE_IDENTIFIERS" class = "variable" > < a href = "../generator.html#Generator.UNPIVOT_ALIASES_ARE_IDENTIFIERS" > UNPIVOT_ALIASES_ARE_IDENTIFIERS< / a > < / dd >
2025-02-13 21:19:58 +01:00
< dd id = "Presto.Generator.JSON_KEY_VALUE_PAIR_SEP" class = "variable" > < a href = "../generator.html#Generator.JSON_KEY_VALUE_PAIR_SEP" > JSON_KEY_VALUE_PAIR_SEP< / a > < / dd >
< dd id = "Presto.Generator.INSERT_OVERWRITE" class = "variable" > < a href = "../generator.html#Generator.INSERT_OVERWRITE" > INSERT_OVERWRITE< / a > < / dd >
< dd id = "Presto.Generator.SUPPORTS_SELECT_INTO" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_SELECT_INTO" > SUPPORTS_SELECT_INTO< / a > < / dd >
< dd id = "Presto.Generator.SUPPORTS_UNLOGGED_TABLES" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_UNLOGGED_TABLES" > SUPPORTS_UNLOGGED_TABLES< / a > < / dd >
2025-02-13 21:20:36 +01:00
< dd id = "Presto.Generator.SUPPORTS_CREATE_TABLE_LIKE" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_CREATE_TABLE_LIKE" > SUPPORTS_CREATE_TABLE_LIKE< / a > < / dd >
< dd id = "Presto.Generator.JSON_TYPE_REQUIRED_FOR_EXTRACTION" class = "variable" > < a href = "../generator.html#Generator.JSON_TYPE_REQUIRED_FOR_EXTRACTION" > JSON_TYPE_REQUIRED_FOR_EXTRACTION< / a > < / dd >
< dd id = "Presto.Generator.JSON_PATH_BRACKETED_KEY_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.JSON_PATH_BRACKETED_KEY_SUPPORTED" > JSON_PATH_BRACKETED_KEY_SUPPORTED< / a > < / dd >
< dd id = "Presto.Generator.JSON_PATH_SINGLE_QUOTE_ESCAPE" class = "variable" > < a href = "../generator.html#Generator.JSON_PATH_SINGLE_QUOTE_ESCAPE" > JSON_PATH_SINGLE_QUOTE_ESCAPE< / a > < / dd >
< dd id = "Presto.Generator.SUPPORTED_JSON_PATH_PARTS" class = "variable" > < a href = "../generator.html#Generator.SUPPORTED_JSON_PATH_PARTS" > SUPPORTED_JSON_PATH_PARTS< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.CAN_IMPLEMENT_ARRAY_ANY" class = "variable" > < a href = "../generator.html#Generator.CAN_IMPLEMENT_ARRAY_ANY" > CAN_IMPLEMENT_ARRAY_ANY< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Generator.SET_OP_MODIFIERS" class = "variable" > < a href = "../generator.html#Generator.SET_OP_MODIFIERS" > SET_OP_MODIFIERS< / a > < / dd >
2025-02-13 21:33:25 +01:00
< dd id = "Presto.Generator.COPY_PARAMS_ARE_WRAPPED" class = "variable" > < a href = "../generator.html#Generator.COPY_PARAMS_ARE_WRAPPED" > COPY_PARAMS_ARE_WRAPPED< / a > < / dd >
< dd id = "Presto.Generator.COPY_PARAMS_EQ_REQUIRED" class = "variable" > < a href = "../generator.html#Generator.COPY_PARAMS_EQ_REQUIRED" > COPY_PARAMS_EQ_REQUIRED< / a > < / dd >
< dd id = "Presto.Generator.COPY_HAS_INTO_KEYWORD" class = "variable" > < a href = "../generator.html#Generator.COPY_HAS_INTO_KEYWORD" > COPY_HAS_INTO_KEYWORD< / a > < / dd >
< dd id = "Presto.Generator.TRY_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.TRY_SUPPORTED" > TRY_SUPPORTED< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Generator.SUPPORTS_UESCAPE" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_UESCAPE" > SUPPORTS_UESCAPE< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "Presto.Generator.STAR_EXCEPT" class = "variable" > < a href = "../generator.html#Generator.STAR_EXCEPT" > STAR_EXCEPT< / a > < / dd >
2025-02-13 21:36:08 +01:00
< dd id = "Presto.Generator.WITH_PROPERTIES_PREFIX" class = "variable" > < a href = "../generator.html#Generator.WITH_PROPERTIES_PREFIX" > WITH_PROPERTIES_PREFIX< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Generator.QUOTE_JSON_PATH" class = "variable" > < a href = "../generator.html#Generator.QUOTE_JSON_PATH" > QUOTE_JSON_PATH< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "Presto.Generator.SUPPORTS_EXPLODING_PROJECTIONS" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_EXPLODING_PROJECTIONS" > SUPPORTS_EXPLODING_PROJECTIONS< / a > < / dd >
< dd id = "Presto.Generator.ARRAY_CONCAT_IS_VAR_LEN" class = "variable" > < a href = "../generator.html#Generator.ARRAY_CONCAT_IS_VAR_LEN" > ARRAY_CONCAT_IS_VAR_LEN< / a > < / dd >
< dd id = "Presto.Generator.SUPPORTS_CONVERT_TIMEZONE" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_CONVERT_TIMEZONE" > SUPPORTS_CONVERT_TIMEZONE< / a > < / dd >
2025-02-13 21:57:20 +01:00
< dd id = "Presto.Generator.SUPPORTS_UNIX_SECONDS" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_UNIX_SECONDS" > SUPPORTS_UNIX_SECONDS< / a > < / dd >
< dd id = "Presto.Generator.ARRAY_SIZE_DIM_REQUIRED" class = "variable" > < a href = "../generator.html#Generator.ARRAY_SIZE_DIM_REQUIRED" > ARRAY_SIZE_DIM_REQUIRED< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.TIME_PART_SINGULARS" class = "variable" > < a href = "../generator.html#Generator.TIME_PART_SINGULARS" > TIME_PART_SINGULARS< / a > < / dd >
< dd id = "Presto.Generator.TOKEN_MAPPING" class = "variable" > < a href = "../generator.html#Generator.TOKEN_MAPPING" > TOKEN_MAPPING< / a > < / dd >
< dd id = "Presto.Generator.PARAMETER_TOKEN" class = "variable" > < a href = "../generator.html#Generator.PARAMETER_TOKEN" > PARAMETER_TOKEN< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.NAMED_PLACEHOLDER_TOKEN" class = "variable" > < a href = "../generator.html#Generator.NAMED_PLACEHOLDER_TOKEN" > NAMED_PLACEHOLDER_TOKEN< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.WITH_SEPARATED_COMMENTS" class = "variable" > < a href = "../generator.html#Generator.WITH_SEPARATED_COMMENTS" > WITH_SEPARATED_COMMENTS< / a > < / dd >
2025-02-13 21:09:41 +01:00
< dd id = "Presto.Generator.EXCLUDE_COMMENTS" class = "variable" > < a href = "../generator.html#Generator.EXCLUDE_COMMENTS" > EXCLUDE_COMMENTS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.UNWRAPPED_INTERVAL_VALUES" class = "variable" > < a href = "../generator.html#Generator.UNWRAPPED_INTERVAL_VALUES" > UNWRAPPED_INTERVAL_VALUES< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.PARAMETERIZABLE_TEXT_TYPES" class = "variable" > < a href = "../generator.html#Generator.PARAMETERIZABLE_TEXT_TYPES" > PARAMETERIZABLE_TEXT_TYPES< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.EXPRESSIONS_WITHOUT_NESTED_CTES" class = "variable" > < a href = "../generator.html#Generator.EXPRESSIONS_WITHOUT_NESTED_CTES" > EXPRESSIONS_WITHOUT_NESTED_CTES< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.SENTINEL_LINE_BREAK" class = "variable" > < a href = "../generator.html#Generator.SENTINEL_LINE_BREAK" > SENTINEL_LINE_BREAK< / a > < / dd >
< dd id = "Presto.Generator.pretty" class = "variable" > < a href = "../generator.html#Generator.pretty" > pretty< / a > < / dd >
< dd id = "Presto.Generator.identify" class = "variable" > < a href = "../generator.html#Generator.identify" > identify< / a > < / dd >
< dd id = "Presto.Generator.normalize" class = "variable" > < a href = "../generator.html#Generator.normalize" > normalize< / a > < / dd >
< dd id = "Presto.Generator.pad" class = "variable" > < a href = "../generator.html#Generator.pad" > pad< / a > < / dd >
< dd id = "Presto.Generator.unsupported_level" class = "variable" > < a href = "../generator.html#Generator.unsupported_level" > unsupported_level< / a > < / dd >
< dd id = "Presto.Generator.max_unsupported" class = "variable" > < a href = "../generator.html#Generator.max_unsupported" > max_unsupported< / a > < / dd >
< dd id = "Presto.Generator.leading_comma" class = "variable" > < a href = "../generator.html#Generator.leading_comma" > leading_comma< / a > < / dd >
< dd id = "Presto.Generator.max_text_width" class = "variable" > < a href = "../generator.html#Generator.max_text_width" > max_text_width< / a > < / dd >
< dd id = "Presto.Generator.comments" class = "variable" > < a href = "../generator.html#Generator.comments" > comments< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.dialect" class = "variable" > < a href = "../generator.html#Generator.dialect" > dialect< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.normalize_functions" class = "variable" > < a href = "../generator.html#Generator.normalize_functions" > normalize_functions< / a > < / dd >
< dd id = "Presto.Generator.unsupported_messages" class = "variable" > < a href = "../generator.html#Generator.unsupported_messages" > unsupported_messages< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.generate" class = "function" > < a href = "../generator.html#Generator.generate" > generate< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.preprocess" class = "function" > < a href = "../generator.html#Generator.preprocess" > preprocess< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.unsupported" class = "function" > < a href = "../generator.html#Generator.unsupported" > unsupported< / a > < / dd >
< dd id = "Presto.Generator.sep" class = "function" > < a href = "../generator.html#Generator.sep" > sep< / a > < / dd >
< dd id = "Presto.Generator.seg" class = "function" > < a href = "../generator.html#Generator.seg" > seg< / a > < / dd >
< dd id = "Presto.Generator.pad_comment" class = "function" > < a href = "../generator.html#Generator.pad_comment" > pad_comment< / a > < / dd >
< dd id = "Presto.Generator.maybe_comment" class = "function" > < a href = "../generator.html#Generator.maybe_comment" > maybe_comment< / a > < / dd >
< dd id = "Presto.Generator.wrap" class = "function" > < a href = "../generator.html#Generator.wrap" > wrap< / a > < / dd >
< dd id = "Presto.Generator.no_identify" class = "function" > < a href = "../generator.html#Generator.no_identify" > no_identify< / a > < / dd >
< dd id = "Presto.Generator.normalize_func" class = "function" > < a href = "../generator.html#Generator.normalize_func" > normalize_func< / a > < / dd >
< dd id = "Presto.Generator.indent" class = "function" > < a href = "../generator.html#Generator.indent" > indent< / a > < / dd >
< dd id = "Presto.Generator.sql" class = "function" > < a href = "../generator.html#Generator.sql" > sql< / a > < / dd >
< dd id = "Presto.Generator.uncache_sql" class = "function" > < a href = "../generator.html#Generator.uncache_sql" > uncache_sql< / a > < / dd >
< dd id = "Presto.Generator.cache_sql" class = "function" > < a href = "../generator.html#Generator.cache_sql" > cache_sql< / a > < / dd >
< dd id = "Presto.Generator.characterset_sql" class = "function" > < a href = "../generator.html#Generator.characterset_sql" > characterset_sql< / a > < / dd >
2025-02-13 21:32:41 +01:00
< dd id = "Presto.Generator.column_parts" class = "function" > < a href = "../generator.html#Generator.column_parts" > column_parts< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.column_sql" class = "function" > < a href = "../generator.html#Generator.column_sql" > column_sql< / a > < / dd >
2025-02-13 15:50:57 +01:00
< dd id = "Presto.Generator.columnposition_sql" class = "function" > < a href = "../generator.html#Generator.columnposition_sql" > columnposition_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.columndef_sql" class = "function" > < a href = "../generator.html#Generator.columndef_sql" > columndef_sql< / a > < / dd >
< dd id = "Presto.Generator.columnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.columnconstraint_sql" > columnconstraint_sql< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Generator.computedcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.computedcolumnconstraint_sql" > computedcolumnconstraint_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.autoincrementcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.autoincrementcolumnconstraint_sql" > autoincrementcolumnconstraint_sql< / a > < / dd >
2025-02-13 15:40:23 +01:00
< dd id = "Presto.Generator.compresscolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.compresscolumnconstraint_sql" > compresscolumnconstraint_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.generatedasidentitycolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.generatedasidentitycolumnconstraint_sql" > generatedasidentitycolumnconstraint_sql< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.generatedasrowcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.generatedasrowcolumnconstraint_sql" > generatedasrowcolumnconstraint_sql< / a > < / dd >
< dd id = "Presto.Generator.periodforsystemtimeconstraint_sql" class = "function" > < a href = "../generator.html#Generator.periodforsystemtimeconstraint_sql" > periodforsystemtimeconstraint_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.notnullcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.notnullcolumnconstraint_sql" > notnullcolumnconstraint_sql< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.transformcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.transformcolumnconstraint_sql" > transformcolumnconstraint_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.primarykeycolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.primarykeycolumnconstraint_sql" > primarykeycolumnconstraint_sql< / a > < / dd >
< dd id = "Presto.Generator.uniquecolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.uniquecolumnconstraint_sql" > uniquecolumnconstraint_sql< / a > < / dd >
2025-02-13 16:00:51 +01:00
< dd id = "Presto.Generator.createable_sql" class = "function" > < a href = "../generator.html#Generator.createable_sql" > createable_sql< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Generator.sequenceproperties_sql" class = "function" > < a href = "../generator.html#Generator.sequenceproperties_sql" > sequenceproperties_sql< / a > < / dd >
2025-02-13 15:57:23 +01:00
< dd id = "Presto.Generator.clone_sql" class = "function" > < a href = "../generator.html#Generator.clone_sql" > clone_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.describe_sql" class = "function" > < a href = "../generator.html#Generator.describe_sql" > describe_sql< / a > < / dd >
2025-02-13 21:19:58 +01:00
< dd id = "Presto.Generator.heredoc_sql" class = "function" > < a href = "../generator.html#Generator.heredoc_sql" > heredoc_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.prepend_ctes" class = "function" > < a href = "../generator.html#Generator.prepend_ctes" > prepend_ctes< / a > < / dd >
< dd id = "Presto.Generator.with_sql" class = "function" > < a href = "../generator.html#Generator.with_sql" > with_sql< / a > < / dd >
< dd id = "Presto.Generator.cte_sql" class = "function" > < a href = "../generator.html#Generator.cte_sql" > cte_sql< / a > < / dd >
< dd id = "Presto.Generator.tablealias_sql" class = "function" > < a href = "../generator.html#Generator.tablealias_sql" > tablealias_sql< / a > < / dd >
< dd id = "Presto.Generator.bitstring_sql" class = "function" > < a href = "../generator.html#Generator.bitstring_sql" > bitstring_sql< / a > < / dd >
< dd id = "Presto.Generator.hexstring_sql" class = "function" > < a href = "../generator.html#Generator.hexstring_sql" > hexstring_sql< / a > < / dd >
2025-02-13 15:52:09 +01:00
< dd id = "Presto.Generator.bytestring_sql" class = "function" > < a href = "../generator.html#Generator.bytestring_sql" > bytestring_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.unicodestring_sql" class = "function" > < a href = "../generator.html#Generator.unicodestring_sql" > unicodestring_sql< / a > < / dd >
2025-02-13 15:57:23 +01:00
< dd id = "Presto.Generator.rawstring_sql" class = "function" > < a href = "../generator.html#Generator.rawstring_sql" > rawstring_sql< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Generator.datatypeparam_sql" class = "function" > < a href = "../generator.html#Generator.datatypeparam_sql" > datatypeparam_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.datatype_sql" class = "function" > < a href = "../generator.html#Generator.datatype_sql" > datatype_sql< / a > < / dd >
< dd id = "Presto.Generator.directory_sql" class = "function" > < a href = "../generator.html#Generator.directory_sql" > directory_sql< / a > < / dd >
< dd id = "Presto.Generator.drop_sql" class = "function" > < a href = "../generator.html#Generator.drop_sql" > drop_sql< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "Presto.Generator.set_operation" class = "function" > < a href = "../generator.html#Generator.set_operation" > set_operation< / a > < / dd >
< dd id = "Presto.Generator.set_operations" class = "function" > < a href = "../generator.html#Generator.set_operations" > set_operations< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.fetch_sql" class = "function" > < a href = "../generator.html#Generator.fetch_sql" > fetch_sql< / a > < / dd >
< dd id = "Presto.Generator.filter_sql" class = "function" > < a href = "../generator.html#Generator.filter_sql" > filter_sql< / a > < / dd >
< dd id = "Presto.Generator.hint_sql" class = "function" > < a href = "../generator.html#Generator.hint_sql" > hint_sql< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Generator.indexparameters_sql" class = "function" > < a href = "../generator.html#Generator.indexparameters_sql" > indexparameters_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.index_sql" class = "function" > < a href = "../generator.html#Generator.index_sql" > index_sql< / a > < / dd >
< dd id = "Presto.Generator.identifier_sql" class = "function" > < a href = "../generator.html#Generator.identifier_sql" > identifier_sql< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "Presto.Generator.hex_sql" class = "function" > < a href = "../generator.html#Generator.hex_sql" > hex_sql< / a > < / dd >
< dd id = "Presto.Generator.lowerhex_sql" class = "function" > < a href = "../generator.html#Generator.lowerhex_sql" > lowerhex_sql< / a > < / dd >
2025-02-13 15:52:09 +01:00
< dd id = "Presto.Generator.inputoutputformat_sql" class = "function" > < a href = "../generator.html#Generator.inputoutputformat_sql" > inputoutputformat_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.national_sql" class = "function" > < a href = "../generator.html#Generator.national_sql" > national_sql< / a > < / dd >
< dd id = "Presto.Generator.partition_sql" class = "function" > < a href = "../generator.html#Generator.partition_sql" > partition_sql< / a > < / dd >
< dd id = "Presto.Generator.properties_sql" class = "function" > < a href = "../generator.html#Generator.properties_sql" > properties_sql< / a > < / dd >
< dd id = "Presto.Generator.root_properties" class = "function" > < a href = "../generator.html#Generator.root_properties" > root_properties< / a > < / dd >
< dd id = "Presto.Generator.properties" class = "function" > < a href = "../generator.html#Generator.properties" > properties< / a > < / dd >
< dd id = "Presto.Generator.with_properties" class = "function" > < a href = "../generator.html#Generator.with_properties" > with_properties< / a > < / dd >
< dd id = "Presto.Generator.locate_properties" class = "function" > < a href = "../generator.html#Generator.locate_properties" > locate_properties< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Generator.property_name" class = "function" > < a href = "../generator.html#Generator.property_name" > property_name< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.property_sql" class = "function" > < a href = "../generator.html#Generator.property_sql" > property_sql< / a > < / dd >
< dd id = "Presto.Generator.likeproperty_sql" class = "function" > < a href = "../generator.html#Generator.likeproperty_sql" > likeproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.fallbackproperty_sql" class = "function" > < a href = "../generator.html#Generator.fallbackproperty_sql" > fallbackproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.journalproperty_sql" class = "function" > < a href = "../generator.html#Generator.journalproperty_sql" > journalproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.freespaceproperty_sql" class = "function" > < a href = "../generator.html#Generator.freespaceproperty_sql" > freespaceproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.checksumproperty_sql" class = "function" > < a href = "../generator.html#Generator.checksumproperty_sql" > checksumproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.mergeblockratioproperty_sql" class = "function" > < a href = "../generator.html#Generator.mergeblockratioproperty_sql" > mergeblockratioproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.datablocksizeproperty_sql" class = "function" > < a href = "../generator.html#Generator.datablocksizeproperty_sql" > datablocksizeproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.blockcompressionproperty_sql" class = "function" > < a href = "../generator.html#Generator.blockcompressionproperty_sql" > blockcompressionproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.isolatedloadingproperty_sql" class = "function" > < a href = "../generator.html#Generator.isolatedloadingproperty_sql" > isolatedloadingproperty_sql< / a > < / dd >
2025-02-13 21:16:09 +01:00
< dd id = "Presto.Generator.partitionboundspec_sql" class = "function" > < a href = "../generator.html#Generator.partitionboundspec_sql" > partitionboundspec_sql< / a > < / dd >
< dd id = "Presto.Generator.partitionedofproperty_sql" class = "function" > < a href = "../generator.html#Generator.partitionedofproperty_sql" > partitionedofproperty_sql< / a > < / dd >
2025-02-13 15:26:26 +01:00
< dd id = "Presto.Generator.lockingproperty_sql" class = "function" > < a href = "../generator.html#Generator.lockingproperty_sql" > lockingproperty_sql< / a > < / dd >
2025-02-13 15:40:23 +01:00
< dd id = "Presto.Generator.withdataproperty_sql" class = "function" > < a href = "../generator.html#Generator.withdataproperty_sql" > withdataproperty_sql< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.withsystemversioningproperty_sql" class = "function" > < a href = "../generator.html#Generator.withsystemversioningproperty_sql" > withsystemversioningproperty_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.insert_sql" class = "function" > < a href = "../generator.html#Generator.insert_sql" > insert_sql< / a > < / dd >
< dd id = "Presto.Generator.introducer_sql" class = "function" > < a href = "../generator.html#Generator.introducer_sql" > introducer_sql< / a > < / dd >
2025-02-13 21:03:38 +01:00
< dd id = "Presto.Generator.kill_sql" class = "function" > < a href = "../generator.html#Generator.kill_sql" > kill_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.pseudotype_sql" class = "function" > < a href = "../generator.html#Generator.pseudotype_sql" > pseudotype_sql< / a > < / dd >
2025-02-13 20:59:47 +01:00
< dd id = "Presto.Generator.objectidentifier_sql" class = "function" > < a href = "../generator.html#Generator.objectidentifier_sql" > objectidentifier_sql< / a > < / dd >
2025-02-13 15:52:09 +01:00
< dd id = "Presto.Generator.onconflict_sql" class = "function" > < a href = "../generator.html#Generator.onconflict_sql" > onconflict_sql< / a > < / dd >
2025-02-13 15:43:32 +01:00
< dd id = "Presto.Generator.returning_sql" class = "function" > < a href = "../generator.html#Generator.returning_sql" > returning_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.rowformatdelimitedproperty_sql" class = "function" > < a href = "../generator.html#Generator.rowformatdelimitedproperty_sql" > rowformatdelimitedproperty_sql< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "Presto.Generator.withtablehint_sql" class = "function" > < a href = "../generator.html#Generator.withtablehint_sql" > withtablehint_sql< / a > < / dd >
< dd id = "Presto.Generator.indextablehint_sql" class = "function" > < a href = "../generator.html#Generator.indextablehint_sql" > indextablehint_sql< / a > < / dd >
2025-02-13 21:17:51 +01:00
< dd id = "Presto.Generator.historicaldata_sql" class = "function" > < a href = "../generator.html#Generator.historicaldata_sql" > historicaldata_sql< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.table_parts" class = "function" > < a href = "../generator.html#Generator.table_parts" > table_parts< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.table_sql" class = "function" > < a href = "../generator.html#Generator.table_sql" > table_sql< / a > < / dd >
< dd id = "Presto.Generator.tablesample_sql" class = "function" > < a href = "../generator.html#Generator.tablesample_sql" > tablesample_sql< / a > < / dd >
< dd id = "Presto.Generator.pivot_sql" class = "function" > < a href = "../generator.html#Generator.pivot_sql" > pivot_sql< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Generator.version_sql" class = "function" > < a href = "../generator.html#Generator.version_sql" > version_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.tuple_sql" class = "function" > < a href = "../generator.html#Generator.tuple_sql" > tuple_sql< / a > < / dd >
< dd id = "Presto.Generator.update_sql" class = "function" > < a href = "../generator.html#Generator.update_sql" > update_sql< / a > < / dd >
< dd id = "Presto.Generator.values_sql" class = "function" > < a href = "../generator.html#Generator.values_sql" > values_sql< / a > < / dd >
< dd id = "Presto.Generator.var_sql" class = "function" > < a href = "../generator.html#Generator.var_sql" > var_sql< / a > < / dd >
< dd id = "Presto.Generator.into_sql" class = "function" > < a href = "../generator.html#Generator.into_sql" > into_sql< / a > < / dd >
< dd id = "Presto.Generator.from_sql" class = "function" > < a href = "../generator.html#Generator.from_sql" > from_sql< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "Presto.Generator.groupingsets_sql" class = "function" > < a href = "../generator.html#Generator.groupingsets_sql" > groupingsets_sql< / a > < / dd >
< dd id = "Presto.Generator.rollup_sql" class = "function" > < a href = "../generator.html#Generator.rollup_sql" > rollup_sql< / a > < / dd >
< dd id = "Presto.Generator.cube_sql" class = "function" > < a href = "../generator.html#Generator.cube_sql" > cube_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.group_sql" class = "function" > < a href = "../generator.html#Generator.group_sql" > group_sql< / a > < / dd >
< dd id = "Presto.Generator.having_sql" class = "function" > < a href = "../generator.html#Generator.having_sql" > having_sql< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Generator.connect_sql" class = "function" > < a href = "../generator.html#Generator.connect_sql" > connect_sql< / a > < / dd >
< dd id = "Presto.Generator.prior_sql" class = "function" > < a href = "../generator.html#Generator.prior_sql" > prior_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.join_sql" class = "function" > < a href = "../generator.html#Generator.join_sql" > join_sql< / a > < / dd >
< dd id = "Presto.Generator.lambda_sql" class = "function" > < a href = "../generator.html#Generator.lambda_sql" > lambda_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.lateral_op" class = "function" > < a href = "../generator.html#Generator.lateral_op" > lateral_op< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.lateral_sql" class = "function" > < a href = "../generator.html#Generator.lateral_sql" > lateral_sql< / a > < / dd >
< dd id = "Presto.Generator.limit_sql" class = "function" > < a href = "../generator.html#Generator.limit_sql" > limit_sql< / a > < / dd >
< dd id = "Presto.Generator.offset_sql" class = "function" > < a href = "../generator.html#Generator.offset_sql" > offset_sql< / a > < / dd >
2025-02-13 15:46:19 +01:00
< dd id = "Presto.Generator.setitem_sql" class = "function" > < a href = "../generator.html#Generator.setitem_sql" > setitem_sql< / a > < / dd >
< dd id = "Presto.Generator.set_sql" class = "function" > < a href = "../generator.html#Generator.set_sql" > set_sql< / a > < / dd >
2025-02-13 15:48:10 +01:00
< dd id = "Presto.Generator.pragma_sql" class = "function" > < a href = "../generator.html#Generator.pragma_sql" > pragma_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.lock_sql" class = "function" > < a href = "../generator.html#Generator.lock_sql" > lock_sql< / a > < / dd >
< dd id = "Presto.Generator.literal_sql" class = "function" > < a href = "../generator.html#Generator.literal_sql" > literal_sql< / a > < / dd >
2025-02-13 20:04:59 +01:00
< dd id = "Presto.Generator.escape_str" class = "function" > < a href = "../generator.html#Generator.escape_str" > escape_str< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.loaddata_sql" class = "function" > < a href = "../generator.html#Generator.loaddata_sql" > loaddata_sql< / a > < / dd >
< dd id = "Presto.Generator.null_sql" class = "function" > < a href = "../generator.html#Generator.null_sql" > null_sql< / a > < / dd >
< dd id = "Presto.Generator.boolean_sql" class = "function" > < a href = "../generator.html#Generator.boolean_sql" > boolean_sql< / a > < / dd >
< dd id = "Presto.Generator.order_sql" class = "function" > < a href = "../generator.html#Generator.order_sql" > order_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.withfill_sql" class = "function" > < a href = "../generator.html#Generator.withfill_sql" > withfill_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.cluster_sql" class = "function" > < a href = "../generator.html#Generator.cluster_sql" > cluster_sql< / a > < / dd >
< dd id = "Presto.Generator.distribute_sql" class = "function" > < a href = "../generator.html#Generator.distribute_sql" > distribute_sql< / a > < / dd >
< dd id = "Presto.Generator.sort_sql" class = "function" > < a href = "../generator.html#Generator.sort_sql" > sort_sql< / a > < / dd >
< dd id = "Presto.Generator.ordered_sql" class = "function" > < a href = "../generator.html#Generator.ordered_sql" > ordered_sql< / a > < / dd >
2025-02-13 21:31:23 +01:00
< dd id = "Presto.Generator.matchrecognizemeasure_sql" class = "function" > < a href = "../generator.html#Generator.matchrecognizemeasure_sql" > matchrecognizemeasure_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.matchrecognize_sql" class = "function" > < a href = "../generator.html#Generator.matchrecognize_sql" > matchrecognize_sql< / a > < / dd >
< dd id = "Presto.Generator.query_modifiers" class = "function" > < a href = "../generator.html#Generator.query_modifiers" > query_modifiers< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Generator.options_modifier" class = "function" > < a href = "../generator.html#Generator.options_modifier" > options_modifier< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.queryoption_sql" class = "function" > < a href = "../generator.html#Generator.queryoption_sql" > queryoption_sql< / a > < / dd >
2025-02-13 15:57:23 +01:00
< dd id = "Presto.Generator.after_limit_modifiers" class = "function" > < a href = "../generator.html#Generator.after_limit_modifiers" > after_limit_modifiers< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.select_sql" class = "function" > < a href = "../generator.html#Generator.select_sql" > select_sql< / a > < / dd >
< dd id = "Presto.Generator.schema_sql" class = "function" > < a href = "../generator.html#Generator.schema_sql" > schema_sql< / a > < / dd >
2025-02-13 16:00:51 +01:00
< dd id = "Presto.Generator.schema_columns_sql" class = "function" > < a href = "../generator.html#Generator.schema_columns_sql" > schema_columns_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.star_sql" class = "function" > < a href = "../generator.html#Generator.star_sql" > star_sql< / a > < / dd >
< dd id = "Presto.Generator.parameter_sql" class = "function" > < a href = "../generator.html#Generator.parameter_sql" > parameter_sql< / a > < / dd >
< dd id = "Presto.Generator.sessionparameter_sql" class = "function" > < a href = "../generator.html#Generator.sessionparameter_sql" > sessionparameter_sql< / a > < / dd >
< dd id = "Presto.Generator.placeholder_sql" class = "function" > < a href = "../generator.html#Generator.placeholder_sql" > placeholder_sql< / a > < / dd >
< dd id = "Presto.Generator.subquery_sql" class = "function" > < a href = "../generator.html#Generator.subquery_sql" > subquery_sql< / a > < / dd >
< dd id = "Presto.Generator.qualify_sql" class = "function" > < a href = "../generator.html#Generator.qualify_sql" > qualify_sql< / a > < / dd >
< dd id = "Presto.Generator.unnest_sql" class = "function" > < a href = "../generator.html#Generator.unnest_sql" > unnest_sql< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.prewhere_sql" class = "function" > < a href = "../generator.html#Generator.prewhere_sql" > prewhere_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.where_sql" class = "function" > < a href = "../generator.html#Generator.where_sql" > where_sql< / a > < / dd >
< dd id = "Presto.Generator.window_sql" class = "function" > < a href = "../generator.html#Generator.window_sql" > window_sql< / a > < / dd >
< dd id = "Presto.Generator.partition_by_sql" class = "function" > < a href = "../generator.html#Generator.partition_by_sql" > partition_by_sql< / a > < / dd >
2025-02-13 15:53:39 +01:00
< dd id = "Presto.Generator.windowspec_sql" class = "function" > < a href = "../generator.html#Generator.windowspec_sql" > windowspec_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.withingroup_sql" class = "function" > < a href = "../generator.html#Generator.withingroup_sql" > withingroup_sql< / a > < / dd >
< dd id = "Presto.Generator.between_sql" class = "function" > < a href = "../generator.html#Generator.between_sql" > between_sql< / a > < / dd >
2025-02-13 21:31:23 +01:00
< dd id = "Presto.Generator.bracket_offset_expressions" class = "function" > < a href = "../generator.html#Generator.bracket_offset_expressions" > bracket_offset_expressions< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.all_sql" class = "function" > < a href = "../generator.html#Generator.all_sql" > all_sql< / a > < / dd >
< dd id = "Presto.Generator.any_sql" class = "function" > < a href = "../generator.html#Generator.any_sql" > any_sql< / a > < / dd >
< dd id = "Presto.Generator.exists_sql" class = "function" > < a href = "../generator.html#Generator.exists_sql" > exists_sql< / a > < / dd >
< dd id = "Presto.Generator.case_sql" class = "function" > < a href = "../generator.html#Generator.case_sql" > case_sql< / a > < / dd >
< dd id = "Presto.Generator.constraint_sql" class = "function" > < a href = "../generator.html#Generator.constraint_sql" > constraint_sql< / a > < / dd >
2025-02-13 15:53:39 +01:00
< dd id = "Presto.Generator.nextvaluefor_sql" class = "function" > < a href = "../generator.html#Generator.nextvaluefor_sql" > nextvaluefor_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.extract_sql" class = "function" > < a href = "../generator.html#Generator.extract_sql" > extract_sql< / a > < / dd >
< dd id = "Presto.Generator.trim_sql" class = "function" > < a href = "../generator.html#Generator.trim_sql" > trim_sql< / a > < / dd >
2025-02-13 21:17:51 +01:00
< dd id = "Presto.Generator.convert_concat_args" class = "function" > < a href = "../generator.html#Generator.convert_concat_args" > convert_concat_args< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.concat_sql" class = "function" > < a href = "../generator.html#Generator.concat_sql" > concat_sql< / a > < / dd >
2025-02-13 21:17:51 +01:00
< dd id = "Presto.Generator.concatws_sql" class = "function" > < a href = "../generator.html#Generator.concatws_sql" > concatws_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.check_sql" class = "function" > < a href = "../generator.html#Generator.check_sql" > check_sql< / a > < / dd >
< dd id = "Presto.Generator.foreignkey_sql" class = "function" > < a href = "../generator.html#Generator.foreignkey_sql" > foreignkey_sql< / a > < / dd >
< dd id = "Presto.Generator.primarykey_sql" class = "function" > < a href = "../generator.html#Generator.primarykey_sql" > primarykey_sql< / a > < / dd >
< dd id = "Presto.Generator.if_sql" class = "function" > < a href = "../generator.html#Generator.if_sql" > if_sql< / a > < / dd >
2025-02-13 15:50:57 +01:00
< dd id = "Presto.Generator.matchagainst_sql" class = "function" > < a href = "../generator.html#Generator.matchagainst_sql" > matchagainst_sql< / a > < / dd >
2025-02-13 15:48:10 +01:00
< dd id = "Presto.Generator.jsonkeyvalue_sql" class = "function" > < a href = "../generator.html#Generator.jsonkeyvalue_sql" > jsonkeyvalue_sql< / a > < / dd >
2025-02-13 21:20:36 +01:00
< dd id = "Presto.Generator.jsonpath_sql" class = "function" > < a href = "../generator.html#Generator.jsonpath_sql" > jsonpath_sql< / a > < / dd >
< dd id = "Presto.Generator.json_path_part" class = "function" > < a href = "../generator.html#Generator.json_path_part" > json_path_part< / a > < / dd >
2025-02-13 21:01:12 +01:00
< dd id = "Presto.Generator.formatjson_sql" class = "function" > < a href = "../generator.html#Generator.formatjson_sql" > formatjson_sql< / a > < / dd >
2025-02-13 15:48:10 +01:00
< dd id = "Presto.Generator.jsonobject_sql" class = "function" > < a href = "../generator.html#Generator.jsonobject_sql" > jsonobject_sql< / a > < / dd >
2025-02-13 21:19:58 +01:00
< dd id = "Presto.Generator.jsonobjectagg_sql" class = "function" > < a href = "../generator.html#Generator.jsonobjectagg_sql" > jsonobjectagg_sql< / a > < / dd >
2025-02-13 21:01:12 +01:00
< dd id = "Presto.Generator.jsonarray_sql" class = "function" > < a href = "../generator.html#Generator.jsonarray_sql" > jsonarray_sql< / a > < / dd >
< dd id = "Presto.Generator.jsonarrayagg_sql" class = "function" > < a href = "../generator.html#Generator.jsonarrayagg_sql" > jsonarrayagg_sql< / a > < / dd >
< dd id = "Presto.Generator.jsoncolumndef_sql" class = "function" > < a href = "../generator.html#Generator.jsoncolumndef_sql" > jsoncolumndef_sql< / a > < / dd >
2025-02-13 21:08:10 +01:00
< dd id = "Presto.Generator.jsonschema_sql" class = "function" > < a href = "../generator.html#Generator.jsonschema_sql" > jsonschema_sql< / a > < / dd >
2025-02-13 21:01:12 +01:00
< dd id = "Presto.Generator.jsontable_sql" class = "function" > < a href = "../generator.html#Generator.jsontable_sql" > jsontable_sql< / a > < / dd >
2025-02-13 15:57:23 +01:00
< dd id = "Presto.Generator.openjsoncolumndef_sql" class = "function" > < a href = "../generator.html#Generator.openjsoncolumndef_sql" > openjsoncolumndef_sql< / a > < / dd >
< dd id = "Presto.Generator.openjson_sql" class = "function" > < a href = "../generator.html#Generator.openjson_sql" > openjson_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.in_sql" class = "function" > < a href = "../generator.html#Generator.in_sql" > in_sql< / a > < / dd >
< dd id = "Presto.Generator.in_unnest_op" class = "function" > < a href = "../generator.html#Generator.in_unnest_op" > in_unnest_op< / a > < / dd >
< dd id = "Presto.Generator.return_sql" class = "function" > < a href = "../generator.html#Generator.return_sql" > return_sql< / a > < / dd >
< dd id = "Presto.Generator.reference_sql" class = "function" > < a href = "../generator.html#Generator.reference_sql" > reference_sql< / a > < / dd >
< dd id = "Presto.Generator.anonymous_sql" class = "function" > < a href = "../generator.html#Generator.anonymous_sql" > anonymous_sql< / a > < / dd >
< dd id = "Presto.Generator.paren_sql" class = "function" > < a href = "../generator.html#Generator.paren_sql" > paren_sql< / a > < / dd >
< dd id = "Presto.Generator.neg_sql" class = "function" > < a href = "../generator.html#Generator.neg_sql" > neg_sql< / a > < / dd >
< dd id = "Presto.Generator.not_sql" class = "function" > < a href = "../generator.html#Generator.not_sql" > not_sql< / a > < / dd >
< dd id = "Presto.Generator.alias_sql" class = "function" > < a href = "../generator.html#Generator.alias_sql" > alias_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.pivotalias_sql" class = "function" > < a href = "../generator.html#Generator.pivotalias_sql" > pivotalias_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.aliases_sql" class = "function" > < a href = "../generator.html#Generator.aliases_sql" > aliases_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.atindex_sql" class = "function" > < a href = "../generator.html#Generator.atindex_sql" > atindex_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.attimezone_sql" class = "function" > < a href = "../generator.html#Generator.attimezone_sql" > attimezone_sql< / a > < / dd >
2025-02-13 21:19:58 +01:00
< dd id = "Presto.Generator.fromtimezone_sql" class = "function" > < a href = "../generator.html#Generator.fromtimezone_sql" > fromtimezone_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.add_sql" class = "function" > < a href = "../generator.html#Generator.add_sql" > add_sql< / a > < / dd >
< dd id = "Presto.Generator.and_sql" class = "function" > < a href = "../generator.html#Generator.and_sql" > and_sql< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Generator.or_sql" class = "function" > < a href = "../generator.html#Generator.or_sql" > or_sql< / a > < / dd >
2025-02-13 20:45:52 +01:00
< dd id = "Presto.Generator.xor_sql" class = "function" > < a href = "../generator.html#Generator.xor_sql" > xor_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.connector_sql" class = "function" > < a href = "../generator.html#Generator.connector_sql" > connector_sql< / a > < / dd >
< dd id = "Presto.Generator.bitwiseand_sql" class = "function" > < a href = "../generator.html#Generator.bitwiseand_sql" > bitwiseand_sql< / a > < / dd >
< dd id = "Presto.Generator.bitwiseleftshift_sql" class = "function" > < a href = "../generator.html#Generator.bitwiseleftshift_sql" > bitwiseleftshift_sql< / a > < / dd >
< dd id = "Presto.Generator.bitwisenot_sql" class = "function" > < a href = "../generator.html#Generator.bitwisenot_sql" > bitwisenot_sql< / a > < / dd >
< dd id = "Presto.Generator.bitwiseor_sql" class = "function" > < a href = "../generator.html#Generator.bitwiseor_sql" > bitwiseor_sql< / a > < / dd >
< dd id = "Presto.Generator.bitwiserightshift_sql" class = "function" > < a href = "../generator.html#Generator.bitwiserightshift_sql" > bitwiserightshift_sql< / a > < / dd >
< dd id = "Presto.Generator.bitwisexor_sql" class = "function" > < a href = "../generator.html#Generator.bitwisexor_sql" > bitwisexor_sql< / a > < / dd >
< dd id = "Presto.Generator.cast_sql" class = "function" > < a href = "../generator.html#Generator.cast_sql" > cast_sql< / a > < / dd >
< dd id = "Presto.Generator.currentdate_sql" class = "function" > < a href = "../generator.html#Generator.currentdate_sql" > currentdate_sql< / a > < / dd >
< dd id = "Presto.Generator.collate_sql" class = "function" > < a href = "../generator.html#Generator.collate_sql" > collate_sql< / a > < / dd >
< dd id = "Presto.Generator.command_sql" class = "function" > < a href = "../generator.html#Generator.command_sql" > command_sql< / a > < / dd >
2025-02-13 15:42:13 +01:00
< dd id = "Presto.Generator.comment_sql" class = "function" > < a href = "../generator.html#Generator.comment_sql" > comment_sql< / a > < / dd >
2025-02-13 15:57:23 +01:00
< dd id = "Presto.Generator.mergetreettlaction_sql" class = "function" > < a href = "../generator.html#Generator.mergetreettlaction_sql" > mergetreettlaction_sql< / a > < / dd >
< dd id = "Presto.Generator.mergetreettl_sql" class = "function" > < a href = "../generator.html#Generator.mergetreettl_sql" > mergetreettl_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.commit_sql" class = "function" > < a href = "../generator.html#Generator.commit_sql" > commit_sql< / a > < / dd >
< dd id = "Presto.Generator.rollback_sql" class = "function" > < a href = "../generator.html#Generator.rollback_sql" > rollback_sql< / a > < / dd >
< dd id = "Presto.Generator.altercolumn_sql" class = "function" > < a href = "../generator.html#Generator.altercolumn_sql" > altercolumn_sql< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "Presto.Generator.alterdiststyle_sql" class = "function" > < a href = "../generator.html#Generator.alterdiststyle_sql" > alterdiststyle_sql< / a > < / dd >
< dd id = "Presto.Generator.altersortkey_sql" class = "function" > < a href = "../generator.html#Generator.altersortkey_sql" > altersortkey_sql< / a > < / dd >
2025-02-13 21:56:02 +01:00
< dd id = "Presto.Generator.alterrename_sql" class = "function" > < a href = "../generator.html#Generator.alterrename_sql" > alterrename_sql< / a > < / dd >
2025-02-13 21:19:58 +01:00
< dd id = "Presto.Generator.renamecolumn_sql" class = "function" > < a href = "../generator.html#Generator.renamecolumn_sql" > renamecolumn_sql< / a > < / dd >
2025-02-13 21:36:08 +01:00
< dd id = "Presto.Generator.alterset_sql" class = "function" > < a href = "../generator.html#Generator.alterset_sql" > alterset_sql< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "Presto.Generator.alter_sql" class = "function" > < a href = "../generator.html#Generator.alter_sql" > alter_sql< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.add_column_sql" class = "function" > < a href = "../generator.html#Generator.add_column_sql" > add_column_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.droppartition_sql" class = "function" > < a href = "../generator.html#Generator.droppartition_sql" > droppartition_sql< / a > < / dd >
< dd id = "Presto.Generator.addconstraint_sql" class = "function" > < a href = "../generator.html#Generator.addconstraint_sql" > addconstraint_sql< / a > < / dd >
< dd id = "Presto.Generator.distinct_sql" class = "function" > < a href = "../generator.html#Generator.distinct_sql" > distinct_sql< / a > < / dd >
< dd id = "Presto.Generator.ignorenulls_sql" class = "function" > < a href = "../generator.html#Generator.ignorenulls_sql" > ignorenulls_sql< / a > < / dd >
< dd id = "Presto.Generator.respectnulls_sql" class = "function" > < a href = "../generator.html#Generator.respectnulls_sql" > respectnulls_sql< / a > < / dd >
2025-02-13 21:27:51 +01:00
< dd id = "Presto.Generator.havingmax_sql" class = "function" > < a href = "../generator.html#Generator.havingmax_sql" > havingmax_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.intdiv_sql" class = "function" > < a href = "../generator.html#Generator.intdiv_sql" > intdiv_sql< / a > < / dd >
< dd id = "Presto.Generator.dpipe_sql" class = "function" > < a href = "../generator.html#Generator.dpipe_sql" > dpipe_sql< / a > < / dd >
< dd id = "Presto.Generator.div_sql" class = "function" > < a href = "../generator.html#Generator.div_sql" > div_sql< / a > < / dd >
2025-02-13 15:42:13 +01:00
< dd id = "Presto.Generator.overlaps_sql" class = "function" > < a href = "../generator.html#Generator.overlaps_sql" > overlaps_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.distance_sql" class = "function" > < a href = "../generator.html#Generator.distance_sql" > distance_sql< / a > < / dd >
< dd id = "Presto.Generator.dot_sql" class = "function" > < a href = "../generator.html#Generator.dot_sql" > dot_sql< / a > < / dd >
< dd id = "Presto.Generator.eq_sql" class = "function" > < a href = "../generator.html#Generator.eq_sql" > eq_sql< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.propertyeq_sql" class = "function" > < a href = "../generator.html#Generator.propertyeq_sql" > propertyeq_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.escape_sql" class = "function" > < a href = "../generator.html#Generator.escape_sql" > escape_sql< / a > < / dd >
< dd id = "Presto.Generator.glob_sql" class = "function" > < a href = "../generator.html#Generator.glob_sql" > glob_sql< / a > < / dd >
< dd id = "Presto.Generator.gt_sql" class = "function" > < a href = "../generator.html#Generator.gt_sql" > gt_sql< / a > < / dd >
< dd id = "Presto.Generator.gte_sql" class = "function" > < a href = "../generator.html#Generator.gte_sql" > gte_sql< / a > < / dd >
< dd id = "Presto.Generator.ilike_sql" class = "function" > < a href = "../generator.html#Generator.ilike_sql" > ilike_sql< / a > < / dd >
2025-02-13 15:50:57 +01:00
< dd id = "Presto.Generator.ilikeany_sql" class = "function" > < a href = "../generator.html#Generator.ilikeany_sql" > ilikeany_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.is_sql" class = "function" > < a href = "../generator.html#Generator.is_sql" > is_sql< / a > < / dd >
< dd id = "Presto.Generator.like_sql" class = "function" > < a href = "../generator.html#Generator.like_sql" > like_sql< / a > < / dd >
2025-02-13 15:50:57 +01:00
< dd id = "Presto.Generator.likeany_sql" class = "function" > < a href = "../generator.html#Generator.likeany_sql" > likeany_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.similarto_sql" class = "function" > < a href = "../generator.html#Generator.similarto_sql" > similarto_sql< / a > < / dd >
< dd id = "Presto.Generator.lt_sql" class = "function" > < a href = "../generator.html#Generator.lt_sql" > lt_sql< / a > < / dd >
< dd id = "Presto.Generator.lte_sql" class = "function" > < a href = "../generator.html#Generator.lte_sql" > lte_sql< / a > < / dd >
< dd id = "Presto.Generator.mod_sql" class = "function" > < a href = "../generator.html#Generator.mod_sql" > mod_sql< / a > < / dd >
< dd id = "Presto.Generator.mul_sql" class = "function" > < a href = "../generator.html#Generator.mul_sql" > mul_sql< / a > < / dd >
< dd id = "Presto.Generator.neq_sql" class = "function" > < a href = "../generator.html#Generator.neq_sql" > neq_sql< / a > < / dd >
< dd id = "Presto.Generator.nullsafeeq_sql" class = "function" > < a href = "../generator.html#Generator.nullsafeeq_sql" > nullsafeeq_sql< / a > < / dd >
< dd id = "Presto.Generator.nullsafeneq_sql" class = "function" > < a href = "../generator.html#Generator.nullsafeneq_sql" > nullsafeneq_sql< / a > < / dd >
< dd id = "Presto.Generator.slice_sql" class = "function" > < a href = "../generator.html#Generator.slice_sql" > slice_sql< / a > < / dd >
< dd id = "Presto.Generator.sub_sql" class = "function" > < a href = "../generator.html#Generator.sub_sql" > sub_sql< / a > < / dd >
< dd id = "Presto.Generator.trycast_sql" class = "function" > < a href = "../generator.html#Generator.trycast_sql" > trycast_sql< / a > < / dd >
2025-02-13 21:33:25 +01:00
< dd id = "Presto.Generator.try_sql" class = "function" > < a href = "../generator.html#Generator.try_sql" > try_sql< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Generator.log_sql" class = "function" > < a href = "../generator.html#Generator.log_sql" > log_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.use_sql" class = "function" > < a href = "../generator.html#Generator.use_sql" > use_sql< / a > < / dd >
< dd id = "Presto.Generator.binary" class = "function" > < a href = "../generator.html#Generator.binary" > binary< / a > < / dd >
< dd id = "Presto.Generator.function_fallback_sql" class = "function" > < a href = "../generator.html#Generator.function_fallback_sql" > function_fallback_sql< / a > < / dd >
2025-02-13 15:26:26 +01:00
< dd id = "Presto.Generator.func" class = "function" > < a href = "../generator.html#Generator.func" > func< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.format_args" class = "function" > < a href = "../generator.html#Generator.format_args" > format_args< / a > < / dd >
2025-02-13 21:32:41 +01:00
< dd id = "Presto.Generator.too_wide" class = "function" > < a href = "../generator.html#Generator.too_wide" > too_wide< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "Presto.Generator.format_time" class = "function" > < a href = "../generator.html#Generator.format_time" > format_time< / a > < / dd >
< dd id = "Presto.Generator.expressions" class = "function" > < a href = "../generator.html#Generator.expressions" > expressions< / a > < / dd >
< dd id = "Presto.Generator.op_expressions" class = "function" > < a href = "../generator.html#Generator.op_expressions" > op_expressions< / a > < / dd >
< dd id = "Presto.Generator.naked_property" class = "function" > < a href = "../generator.html#Generator.naked_property" > naked_property< / a > < / dd >
< dd id = "Presto.Generator.tag_sql" class = "function" > < a href = "../generator.html#Generator.tag_sql" > tag_sql< / a > < / dd >
< dd id = "Presto.Generator.token_sql" class = "function" > < a href = "../generator.html#Generator.token_sql" > token_sql< / a > < / dd >
< dd id = "Presto.Generator.userdefinedfunction_sql" class = "function" > < a href = "../generator.html#Generator.userdefinedfunction_sql" > userdefinedfunction_sql< / a > < / dd >
< dd id = "Presto.Generator.joinhint_sql" class = "function" > < a href = "../generator.html#Generator.joinhint_sql" > joinhint_sql< / a > < / dd >
< dd id = "Presto.Generator.kwarg_sql" class = "function" > < a href = "../generator.html#Generator.kwarg_sql" > kwarg_sql< / a > < / dd >
< dd id = "Presto.Generator.when_sql" class = "function" > < a href = "../generator.html#Generator.when_sql" > when_sql< / a > < / dd >
< dd id = "Presto.Generator.merge_sql" class = "function" > < a href = "../generator.html#Generator.merge_sql" > merge_sql< / a > < / dd >
2025-02-13 15:46:19 +01:00
< dd id = "Presto.Generator.tochar_sql" class = "function" > < a href = "../generator.html#Generator.tochar_sql" > tochar_sql< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Generator.tonumber_sql" class = "function" > < a href = "../generator.html#Generator.tonumber_sql" > tonumber_sql< / a > < / dd >
2025-02-13 15:58:40 +01:00
< dd id = "Presto.Generator.dictproperty_sql" class = "function" > < a href = "../generator.html#Generator.dictproperty_sql" > dictproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.dictrange_sql" class = "function" > < a href = "../generator.html#Generator.dictrange_sql" > dictrange_sql< / a > < / dd >
< dd id = "Presto.Generator.dictsubproperty_sql" class = "function" > < a href = "../generator.html#Generator.dictsubproperty_sql" > dictsubproperty_sql< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "Presto.Generator.duplicatekeyproperty_sql" class = "function" > < a href = "../generator.html#Generator.duplicatekeyproperty_sql" > duplicatekeyproperty_sql< / a > < / dd >
< dd id = "Presto.Generator.distributedbyproperty_sql" class = "function" > < a href = "../generator.html#Generator.distributedbyproperty_sql" > distributedbyproperty_sql< / a > < / dd >
2025-02-13 16:00:51 +01:00
< dd id = "Presto.Generator.oncluster_sql" class = "function" > < a href = "../generator.html#Generator.oncluster_sql" > oncluster_sql< / a > < / dd >
2025-02-13 20:21:40 +01:00
< dd id = "Presto.Generator.clusteredbyproperty_sql" class = "function" > < a href = "../generator.html#Generator.clusteredbyproperty_sql" > clusteredbyproperty_sql< / a > < / dd >
2025-02-13 20:39:26 +01:00
< dd id = "Presto.Generator.anyvalue_sql" class = "function" > < a href = "../generator.html#Generator.anyvalue_sql" > anyvalue_sql< / a > < / dd >
2025-02-13 20:46:55 +01:00
< dd id = "Presto.Generator.querytransform_sql" class = "function" > < a href = "../generator.html#Generator.querytransform_sql" > querytransform_sql< / a > < / dd >
2025-02-13 20:48:36 +01:00
< dd id = "Presto.Generator.indexconstraintoption_sql" class = "function" > < a href = "../generator.html#Generator.indexconstraintoption_sql" > indexconstraintoption_sql< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.checkcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.checkcolumnconstraint_sql" > checkcolumnconstraint_sql< / a > < / dd >
2025-02-13 20:48:36 +01:00
< dd id = "Presto.Generator.indexcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.indexcolumnconstraint_sql" > indexcolumnconstraint_sql< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "Presto.Generator.nvl2_sql" class = "function" > < a href = "../generator.html#Generator.nvl2_sql" > nvl2_sql< / a > < / dd >
< dd id = "Presto.Generator.comprehension_sql" class = "function" > < a href = "../generator.html#Generator.comprehension_sql" > comprehension_sql< / a > < / dd >
2025-02-13 21:01:12 +01:00
< dd id = "Presto.Generator.columnprefix_sql" class = "function" > < a href = "../generator.html#Generator.columnprefix_sql" > columnprefix_sql< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "Presto.Generator.opclass_sql" class = "function" > < a href = "../generator.html#Generator.opclass_sql" > opclass_sql< / a > < / dd >
2025-02-13 21:06:11 +01:00
< dd id = "Presto.Generator.predict_sql" class = "function" > < a href = "../generator.html#Generator.predict_sql" > predict_sql< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "Presto.Generator.forin_sql" class = "function" > < a href = "../generator.html#Generator.forin_sql" > forin_sql< / a > < / dd >
< dd id = "Presto.Generator.refresh_sql" class = "function" > < a href = "../generator.html#Generator.refresh_sql" > refresh_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.toarray_sql" class = "function" > < a href = "../generator.html#Generator.toarray_sql" > toarray_sql< / a > < / dd >
< dd id = "Presto.Generator.tsordstotime_sql" class = "function" > < a href = "../generator.html#Generator.tsordstotime_sql" > tsordstotime_sql< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Generator.tsordstotimestamp_sql" class = "function" > < a href = "../generator.html#Generator.tsordstotimestamp_sql" > tsordstotimestamp_sql< / a > < / dd >
2025-02-13 21:57:20 +01:00
< dd id = "Presto.Generator.tsordstodatetime_sql" class = "function" > < a href = "../generator.html#Generator.tsordstodatetime_sql" > tsordstodatetime_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "Presto.Generator.tsordstodate_sql" class = "function" > < a href = "../generator.html#Generator.tsordstodate_sql" > tsordstodate_sql< / a > < / dd >
< dd id = "Presto.Generator.unixdate_sql" class = "function" > < a href = "../generator.html#Generator.unixdate_sql" > unixdate_sql< / a > < / dd >
< dd id = "Presto.Generator.lastday_sql" class = "function" > < a href = "../generator.html#Generator.lastday_sql" > lastday_sql< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "Presto.Generator.dateadd_sql" class = "function" > < a href = "../generator.html#Generator.dateadd_sql" > dateadd_sql< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "Presto.Generator.arrayany_sql" class = "function" > < a href = "../generator.html#Generator.arrayany_sql" > arrayany_sql< / a > < / dd >
< dd id = "Presto.Generator.partitionrange_sql" class = "function" > < a href = "../generator.html#Generator.partitionrange_sql" > partitionrange_sql< / a > < / dd >
< dd id = "Presto.Generator.truncatetable_sql" class = "function" > < a href = "../generator.html#Generator.truncatetable_sql" > truncatetable_sql< / a > < / dd >
< dd id = "Presto.Generator.convert_sql" class = "function" > < a href = "../generator.html#Generator.convert_sql" > convert_sql< / a > < / dd >
2025-02-13 21:33:25 +01:00
< dd id = "Presto.Generator.copyparameter_sql" class = "function" > < a href = "../generator.html#Generator.copyparameter_sql" > copyparameter_sql< / a > < / dd >
< dd id = "Presto.Generator.credentials_sql" class = "function" > < a href = "../generator.html#Generator.credentials_sql" > credentials_sql< / a > < / dd >
< dd id = "Presto.Generator.copy_sql" class = "function" > < a href = "../generator.html#Generator.copy_sql" > copy_sql< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "Presto.Generator.semicolon_sql" class = "function" > < a href = "../generator.html#Generator.semicolon_sql" > semicolon_sql< / a > < / dd >
2025-02-13 21:36:08 +01:00
< dd id = "Presto.Generator.datadeletionproperty_sql" class = "function" > < a href = "../generator.html#Generator.datadeletionproperty_sql" > datadeletionproperty_sql< / a > < / dd >
2025-02-13 21:37:09 +01:00
< dd id = "Presto.Generator.maskingpolicycolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.maskingpolicycolumnconstraint_sql" > maskingpolicycolumnconstraint_sql< / a > < / dd >
2025-02-13 21:37:40 +01:00
< dd id = "Presto.Generator.gapfill_sql" class = "function" > < a href = "../generator.html#Generator.gapfill_sql" > gapfill_sql< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "Presto.Generator.scope_resolution" class = "function" > < a href = "../generator.html#Generator.scope_resolution" > scope_resolution< / a > < / dd >
< dd id = "Presto.Generator.scoperesolution_sql" class = "function" > < a href = "../generator.html#Generator.scoperesolution_sql" > scoperesolution_sql< / a > < / dd >
< dd id = "Presto.Generator.parsejson_sql" class = "function" > < a href = "../generator.html#Generator.parsejson_sql" > parsejson_sql< / a > < / dd >
< dd id = "Presto.Generator.rand_sql" class = "function" > < a href = "../generator.html#Generator.rand_sql" > rand_sql< / a > < / dd >
< dd id = "Presto.Generator.changes_sql" class = "function" > < a href = "../generator.html#Generator.changes_sql" > changes_sql< / a > < / dd >
2025-02-13 21:43:00 +01:00
< dd id = "Presto.Generator.pad_sql" class = "function" > < a href = "../generator.html#Generator.pad_sql" > pad_sql< / a > < / dd >
2025-02-13 21:52:10 +01:00
< dd id = "Presto.Generator.summarize_sql" class = "function" > < a href = "../generator.html#Generator.summarize_sql" > summarize_sql< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "Presto.Generator.explodinggenerateseries_sql" class = "function" > < a href = "../generator.html#Generator.explodinggenerateseries_sql" > explodinggenerateseries_sql< / a > < / dd >
< dd id = "Presto.Generator.arrayconcat_sql" class = "function" > < a href = "../generator.html#Generator.arrayconcat_sql" > arrayconcat_sql< / a > < / dd >
< dd id = "Presto.Generator.converttimezone_sql" class = "function" > < a href = "../generator.html#Generator.converttimezone_sql" > converttimezone_sql< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "Presto.Generator.json_sql" class = "function" > < a href = "../generator.html#Generator.json_sql" > json_sql< / a > < / dd >
< dd id = "Presto.Generator.jsonvalue_sql" class = "function" > < a href = "../generator.html#Generator.jsonvalue_sql" > jsonvalue_sql< / a > < / dd >
< dd id = "Presto.Generator.conditionalinsert_sql" class = "function" > < a href = "../generator.html#Generator.conditionalinsert_sql" > conditionalinsert_sql< / a > < / dd >
< dd id = "Presto.Generator.multitableinserts_sql" class = "function" > < a href = "../generator.html#Generator.multitableinserts_sql" > multitableinserts_sql< / a > < / dd >
< dd id = "Presto.Generator.oncondition_sql" class = "function" > < a href = "../generator.html#Generator.oncondition_sql" > oncondition_sql< / a > < / dd >
< dd id = "Presto.Generator.jsonexists_sql" class = "function" > < a href = "../generator.html#Generator.jsonexists_sql" > jsonexists_sql< / a > < / dd >
< dd id = "Presto.Generator.arrayagg_sql" class = "function" > < a href = "../generator.html#Generator.arrayagg_sql" > arrayagg_sql< / a > < / dd >
2025-02-13 21:55:19 +01:00
< dd id = "Presto.Generator.apply_sql" class = "function" > < a href = "../generator.html#Generator.apply_sql" > apply_sql< / a > < / dd >
< dd id = "Presto.Generator.grant_sql" class = "function" > < a href = "../generator.html#Generator.grant_sql" > grant_sql< / a > < / dd >
< dd id = "Presto.Generator.grantprivilege_sql" class = "function" > < a href = "../generator.html#Generator.grantprivilege_sql" > grantprivilege_sql< / a > < / dd >
< dd id = "Presto.Generator.grantprincipal_sql" class = "function" > < a href = "../generator.html#Generator.grantprincipal_sql" > grantprincipal_sql< / a > < / dd >
2025-02-13 21:55:40 +01:00
< dd id = "Presto.Generator.columns_sql" class = "function" > < a href = "../generator.html#Generator.columns_sql" > columns_sql< / a > < / dd >
< dd id = "Presto.Generator.overlay_sql" class = "function" > < a href = "../generator.html#Generator.overlay_sql" > overlay_sql< / a > < / dd >
2025-02-13 21:56:19 +01:00
< dd id = "Presto.Generator.todouble_sql" class = "function" > < a href = "../generator.html#Generator.todouble_sql" > todouble_sql< / a > < / dd >
< dd id = "Presto.Generator.string_sql" class = "function" > < a href = "../generator.html#Generator.string_sql" > string_sql< / a > < / dd >
2025-02-13 21:56:38 +01:00
< dd id = "Presto.Generator.median_sql" class = "function" > < a href = "../generator.html#Generator.median_sql" > median_sql< / a > < / dd >
< dd id = "Presto.Generator.overflowtruncatebehavior_sql" class = "function" > < a href = "../generator.html#Generator.overflowtruncatebehavior_sql" > overflowtruncatebehavior_sql< / a > < / dd >
2025-02-13 21:57:20 +01:00
< dd id = "Presto.Generator.unixseconds_sql" class = "function" > < a href = "../generator.html#Generator.unixseconds_sql" > unixseconds_sql< / a > < / dd >
< dd id = "Presto.Generator.arraysize_sql" class = "function" > < a href = "../generator.html#Generator.arraysize_sql" > arraysize_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< / div >
< / dl >
< / div >
< / section >
< / main >
< script >
function escapeHTML(html) {
return document.createElement('div').appendChild(document.createTextNode(html)).parentNode.innerHTML;
}
const originalContent = document.querySelector("main.pdoc");
let currentContent = originalContent;
function setContent(innerHTML) {
let elem;
if (innerHTML) {
elem = document.createElement("main");
elem.classList.add("pdoc");
elem.innerHTML = innerHTML;
} else {
elem = originalContent;
}
if (currentContent !== elem) {
currentContent.replaceWith(elem);
currentContent = elem;
}
}
function getSearchTerm() {
return (new URL(window.location)).searchParams.get("search");
}
const searchBox = document.querySelector(".pdoc input[type=search]");
searchBox.addEventListener("input", function () {
let url = new URL(window.location);
if (searchBox.value.trim()) {
url.hash = "";
url.searchParams.set("search", searchBox.value);
} else {
url.searchParams.delete("search");
}
history.replaceState("", "", url.toString());
onInput();
});
window.addEventListener("popstate", onInput);
let search, searchErr;
async function initialize() {
try {
search = await new Promise((resolve, reject) => {
const script = document.createElement("script");
script.type = "text/javascript";
script.async = true;
script.onload = () => resolve(window.pdocSearch);
script.onerror = (e) => reject(e);
script.src = "../../search.js";
document.getElementsByTagName("head")[0].appendChild(script);
});
} catch (e) {
console.error("Cannot fetch pdoc search index");
searchErr = "Cannot fetch search index.";
}
onInput();
document.querySelector("nav.pdoc").addEventListener("click", e => {
if (e.target.hash) {
searchBox.value = "";
searchBox.dispatchEvent(new Event("input"));
}
});
}
function onInput() {
setContent((() => {
const term = getSearchTerm();
if (!term) {
return null
}
if (searchErr) {
return `< h3 > Error: ${searchErr}< / h3 > `
}
if (!search) {
return "< h3 > Searching...< / h3 > "
}
window.scrollTo({top: 0, left: 0, behavior: 'auto'});
const results = search(term);
let html;
if (results.length === 0) {
html = `No search results for '${escapeHTML(term)}'.`
} else {
html = `< h4 > ${results.length} search result${results.length > 1 ? "s" : ""} for '${escapeHTML(term)}'.< / h4 > `;
}
for (let result of results.slice(0, 10)) {
let doc = result.doc;
let url = `../../${doc.modulename.replaceAll(".", "/")}.html`;
if (doc.qualname) {
url += `#${doc.qualname}`;
}
let heading;
switch (result.doc.kind) {
case "function":
if (doc.fullname.endsWith(".__init__")) {
heading = `< span class = "name" > ${doc.fullname.replace(/\.__init__$/, "")}< / span > ${doc.signature}`;
} else {
heading = `< span class = "def" > ${doc.funcdef}< / span > < span class = "name" > ${doc.fullname}< / span > ${doc.signature}`;
}
break;
case "class":
heading = `< span class = "def" > class< / span > < span class = "name" > ${doc.fullname}< / span > `;
if (doc.bases)
heading += `< wbr > (< span class = "base" > ${doc.bases}< / span > )`;
heading += `:`;
break;
case "variable":
heading = `< span class = "name" > ${doc.fullname}< / span > `;
if (doc.annotation)
heading += `< span class = "annotation" > ${doc.annotation}< / span > `;
if (doc.default_value)
2025-02-13 15:40:23 +01:00
heading += `< span class = "default_value" > = ${doc.default_value}< / span > `;
2025-02-13 15:23:26 +01:00
break;
default:
heading = `< span class = "name" > ${doc.fullname}< / span > `;
break;
}
html += `
< section class = "search-result" >
< a href = "${url}" class = "attr ${doc.kind}" > ${heading}< / a >
< div class = "docstring" > ${doc.doc}< / div >
< / section >
`;
}
return html;
})());
}
if (getSearchTerm()) {
initialize();
searchBox.value = getSearchTerm();
onInput();
} else {
searchBox.addEventListener("focus", initialize, {once: true});
}
searchBox.addEventListener("keydown", e => {
if (["ArrowDown", "ArrowUp", "Enter"].includes(e.key)) {
let focused = currentContent.querySelector(".search-result.focused");
if (!focused) {
currentContent.querySelector(".search-result").classList.add("focused");
} else if (
e.key === "ArrowDown"
& & focused.nextElementSibling
& & focused.nextElementSibling.classList.contains("search-result")
) {
focused.classList.remove("focused");
focused.nextElementSibling.classList.add("focused");
focused.nextElementSibling.scrollIntoView({
behavior: "smooth",
block: "nearest",
inline: "nearest"
});
} else if (
e.key === "ArrowUp"
& & focused.previousElementSibling
& & focused.previousElementSibling.classList.contains("search-result")
) {
focused.classList.remove("focused");
focused.previousElementSibling.classList.add("focused");
focused.previousElementSibling.scrollIntoView({
behavior: "smooth",
block: "nearest",
inline: "nearest"
});
} else if (
e.key === "Enter"
) {
focused.querySelector("a").click();
}
}
});
< / script > < / body >
< / html >