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.duckdb 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:51:42 +01:00
< li >
< a class = "variable" href = "#DATETIME_DELTA" > DATETIME_DELTA< / a >
< / li >
2025-02-13 21:54:13 +01:00
< li >
< a class = "variable" href = "#WINDOW_FUNCS_WITH_IGNORE_NULLS" > WINDOW_FUNCS_WITH_IGNORE_NULLS< / a >
< / li >
2025-02-13 21:52:10 +01:00
< li >
< a class = "variable" href = "#WRAPPED_JSON_EXTRACT_EXPRESSIONS" > WRAPPED_JSON_EXTRACT_EXPRESSIONS< / a >
< / li >
2025-02-13 15:23:26 +01:00
< li >
< a class = "class" href = "#DuckDB" > DuckDB< / a >
< ul class = "memberlist" >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.NULL_ORDERING" > NULL_ORDERING< / a >
< / li >
2025-02-13 21:02:36 +01:00
< li >
< a class = "variable" href = "#DuckDB.SUPPORTS_USER_DEFINED_TYPES" > SUPPORTS_USER_DEFINED_TYPES< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
2025-02-13 21:17:09 +01:00
< a class = "variable" href = "#DuckDB.SAFE_DIVISION" > SAFE_DIVISION< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.INDEX_OFFSET" > INDEX_OFFSET< / a >
< / li >
2025-02-13 21:17:51 +01:00
< li >
< a class = "variable" href = "#DuckDB.CONCAT_COALESCE" > CONCAT_COALESCE< / a >
< / li >
2025-02-13 21:43:00 +01:00
< li >
< a class = "variable" href = "#DuckDB.SUPPORTS_ORDER_BY_ALL" > SUPPORTS_ORDER_BY_ALL< / a >
< / li >
2025-02-13 21:52:32 +01:00
< li >
< a class = "variable" href = "#DuckDB.SUPPORTS_FIXED_SIZE_ARRAYS" > SUPPORTS_FIXED_SIZE_ARRAYS< / a >
< / li >
2025-02-13 21:54:13 +01:00
< li >
< a class = "variable" href = "#DuckDB.STRICT_JSON_PATH_SYNTAX" > STRICT_JSON_PATH_SYNTAX< / a >
< / li >
2025-02-13 21:17:09 +01:00
< li >
< a class = "variable" href = "#DuckDB.NORMALIZATION_STRATEGY" > NORMALIZATION_STRATEGY< / a >
2025-02-13 20:15:27 +01:00
< / li >
2025-02-13 21:20:36 +01:00
< li >
< a class = "function" href = "#DuckDB.to_json_path" > to_json_path< / a >
< / li >
2025-02-13 15:23:26 +01:00
< li >
< a class = "class" href = "#DuckDB.Tokenizer" > DuckDB.Tokenizer< / a >
< ul class = "memberlist" >
2025-02-13 21:30:28 +01:00
< li >
< a class = "variable" href = "#DuckDB.Tokenizer.HEREDOC_STRINGS" > HEREDOC_STRINGS< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Tokenizer.HEREDOC_TAG_IS_IDENTIFIER" > HEREDOC_TAG_IS_IDENTIFIER< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Tokenizer.HEREDOC_STRING_ALTERNATIVE" > HEREDOC_STRING_ALTERNATIVE< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Tokenizer.KEYWORDS" > KEYWORDS< / a >
< / li >
2025-02-13 21:19:14 +01:00
< li >
< a class = "variable" href = "#DuckDB.Tokenizer.SINGLE_TOKENS" > SINGLE_TOKENS< / a >
< / li >
2025-02-13 15:23:26 +01:00
< / ul >
< / li >
< li >
< a class = "class" href = "#DuckDB.Parser" > DuckDB.Parser< / a >
< ul class = "memberlist" >
2025-02-13 20:46:55 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.BITWISE" > BITWISE< / a >
< / li >
2025-02-13 21:55:40 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.RANGE_PARSERS" > RANGE_PARSERS< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Parser.EXPONENT" > EXPONENT< / a >
< / li >
2025-02-13 21:29:39 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.FUNCTIONS_WITH_ALIASED_ARGS" > FUNCTIONS_WITH_ALIASED_ARGS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.FUNCTIONS" > FUNCTIONS< / a >
< / li >
2025-02-13 20:51:40 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.FUNCTION_PARSERS" > FUNCTION_PARSERS< / a >
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.NO_PAREN_FUNCTION_PARSERS" > NO_PAREN_FUNCTION_PARSERS< / a >
< / li >
2025-02-13 21:03:38 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.TABLE_ALIAS_TOKENS" > TABLE_ALIAS_TOKENS< / a >
< / li >
2025-02-13 21:19:14 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.PLACEHOLDER_PARSERS" > PLACEHOLDER_PARSERS< / a >
< / li >
2025-02-13 21:35:32 +01:00
< li >
2025-02-13 21:41:14 +01:00
< a class = "variable" href = "#DuckDB.Parser.TYPE_CONVERTERS" > TYPE_CONVERTERS< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Parser.ID_VAR_TOKENS" > ID_VAR_TOKENS< / a >
2025-02-13 21:35:32 +01:00
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Parser.SHOW_TRIE" > SHOW_TRIE< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Parser.SET_TRIE" > SET_TRIE< / a >
< / li >
2025-02-13 15:23:26 +01:00
< / ul >
< / li >
< li >
< a class = "class" href = "#DuckDB.Generator" > DuckDB.Generator< / a >
< ul class = "memberlist" >
2025-02-13 21:29:39 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.PARAMETER_TOKEN" > PARAMETER_TOKEN< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.NAMED_PLACEHOLDER_TOKEN" > NAMED_PLACEHOLDER_TOKEN< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.JOIN_HINTS" > JOIN_HINTS< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.TABLE_HINTS" > TABLE_HINTS< / a >
< / li >
2025-02-13 20:43:05 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.QUERY_HINTS" > QUERY_HINTS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.LIMIT_FETCH" > LIMIT_FETCH< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.STRUCT_DELIMITER" > STRUCT_DELIMITER< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.RENAME_TABLE_WITH_DB" > RENAME_TABLE_WITH_DB< / a >
< / li >
2025-02-13 20:58:22 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.NVL2_SUPPORTED" > NVL2_SUPPORTED< / a >
< / li >
2025-02-13 21:03:38 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.SEMI_ANTI_JOIN_WITH_SIDE" > SEMI_ANTI_JOIN_WITH_SIDE< / a >
< / li >
2025-02-13 21:19:14 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.TABLESAMPLE_KEYWORDS" > TABLESAMPLE_KEYWORDS< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.TABLESAMPLE_SEED_KEYWORD" > TABLESAMPLE_SEED_KEYWORD< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.LAST_DAY_SUPPORTS_DATE_PART" > LAST_DAY_SUPPORTS_DATE_PART< / a >
< / li >
2025-02-13 21:19:58 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.JSON_KEY_VALUE_PAIR_SEP" > JSON_KEY_VALUE_PAIR_SEP< / a >
< / li >
2025-02-13 21:20:36 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.IGNORE_NULLS_IN_FUNC" > IGNORE_NULLS_IN_FUNC< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.JSON_PATH_BRACKETED_KEY_SUPPORTED" > JSON_PATH_BRACKETED_KEY_SUPPORTED< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.SUPPORTS_CREATE_TABLE_LIKE" > SUPPORTS_CREATE_TABLE_LIKE< / a >
< / li >
2025-02-13 21:21:45 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.MULTI_ARG_DISTINCT" > MULTI_ARG_DISTINCT< / a >
< / li >
2025-02-13 21:29:39 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.CAN_IMPLEMENT_ARRAY_ANY" > CAN_IMPLEMENT_ARRAY_ANY< / a >
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.SUPPORTS_TO_NUMBER" > SUPPORTS_TO_NUMBER< / a >
< / li >
2025-02-13 21:33:25 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.COPY_HAS_INTO_KEYWORD" > COPY_HAS_INTO_KEYWORD< / a >
< / li >
2025-02-13 21:35:32 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.STAR_EXCEPT" > STAR_EXCEPT< / a >
< / li >
2025-02-13 21:43:00 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.PAD_FILL_PATTERN_IS_REQUIRED" > PAD_FILL_PATTERN_IS_REQUIRED< / a >
< / li >
2025-02-13 21:52:32 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.ARRAY_CONCAT_IS_VAR_LEN" > ARRAY_CONCAT_IS_VAR_LEN< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.TRANSFORMS" > TRANSFORMS< / a >
< / li >
2025-02-13 21:20:36 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.SUPPORTED_JSON_PATH_PARTS" > SUPPORTED_JSON_PATH_PARTS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.TYPE_MAPPING" > TYPE_MAPPING< / a >
< / li >
2025-02-13 21:37:40 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.RESERVED_KEYWORDS" > RESERVED_KEYWORDS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.UNWRAPPED_INTERVAL_VALUES" > UNWRAPPED_INTERVAL_VALUES< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.Generator.PROPERTIES_LOCATION" > PROPERTIES_LOCATION< / a >
< / li >
2025-02-13 21:52:32 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.fromiso8601timestamp_sql" > fromiso8601timestamp_sql< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.strtotime_sql" > strtotime_sql< / a >
< / li >
< li >
< a class = "function" href = "#DuckDB.Generator.strtodate_sql" > strtodate_sql< / a >
< / li >
< li >
< a class = "function" href = "#DuckDB.Generator.parsejson_sql" > parsejson_sql< / a >
< / li >
2025-02-13 16:00:51 +01:00
< li >
2025-02-13 21:19:14 +01:00
< a class = "function" href = "#DuckDB.Generator.timefromparts_sql" > timefromparts_sql< / a >
< / li >
< li >
< a class = "function" href = "#DuckDB.Generator.timestampfromparts_sql" > timestampfromparts_sql< / a >
2025-02-13 16:00:51 +01:00
< / li >
2025-02-13 15:43:32 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.tablesample_sql" > tablesample_sql< / a >
< / li >
2025-02-13 21:19:14 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.interval_sql" > interval_sql< / a >
< / li >
< li >
< a class = "function" href = "#DuckDB.Generator.columndef_sql" > columndef_sql< / a >
< / li >
< li >
2025-02-13 21:29:39 +01:00
< a class = "function" href = "#DuckDB.Generator.join_sql" > join_sql< / a >
< / li >
< li >
< a class = "function" href = "#DuckDB.Generator.generateseries_sql" > generateseries_sql< / a >
2025-02-13 21:19:14 +01:00
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.bracket_sql" > bracket_sql< / a >
< / li >
2025-02-13 21:32:41 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.withingroup_sql" > withingroup_sql< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.length_sql" > length_sql< / a >
< / li >
2025-02-13 21:51:42 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.objectinsert_sql" > objectinsert_sql< / a >
< / li >
2025-02-13 21:52:32 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.unnest_sql" > unnest_sql< / a >
< / li >
2025-02-13 21:54:13 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.ignorenulls_sql" > ignorenulls_sql< / a >
< / li >
< li >
< a class = "function" href = "#DuckDB.Generator.arraytostring_sql" > arraytostring_sql< / a >
< / li >
2025-02-13 21:56:38 +01:00
< li >
< a class = "function" href = "#DuckDB.Generator.regexpextract_sql" > regexpextract_sql< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.SELECT_KINDS" > SELECT_KINDS< / a >
< / li >
2025-02-13 21:33:25 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.TRY_SUPPORTED" > TRY_SUPPORTED< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#DuckDB.Generator.SUPPORTS_UESCAPE" > SUPPORTS_UESCAPE< / a >
< / li >
2025-02-13 21:30:28 +01:00
< li >
< a class = "variable" href = "#DuckDB.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 = "#DuckDB.SUPPORTS_COLUMN_JOIN_MARKS" > SUPPORTS_COLUMN_JOIN_MARKS< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.tokenizer_class" > tokenizer_class< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#DuckDB.jsonpath_tokenizer_class" > jsonpath_tokenizer_class< / a >
< / li >
2025-02-13 20:15:27 +01:00
< li >
< a class = "variable" href = "#DuckDB.parser_class" > parser_class< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.generator_class" > generator_class< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.TIME_TRIE" > TIME_TRIE< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.FORMAT_TRIE" > FORMAT_TRIE< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.INVERSE_TIME_MAPPING" > INVERSE_TIME_MAPPING< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.INVERSE_TIME_TRIE" > INVERSE_TIME_TRIE< / a >
< / li >
2025-02-13 21:41:14 +01:00
< li >
< a class = "variable" href = "#DuckDB.INVERSE_FORMAT_MAPPING" > INVERSE_FORMAT_MAPPING< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.INVERSE_FORMAT_TRIE" > INVERSE_FORMAT_TRIE< / a >
< / li >
2025-02-13 21:52:32 +01:00
< li >
< a class = "variable" href = "#DuckDB.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 = "#DuckDB.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 = "#DuckDB.QUOTE_START" > QUOTE_START< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.QUOTE_END" > QUOTE_END< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.IDENTIFIER_START" > IDENTIFIER_START< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.IDENTIFIER_END" > IDENTIFIER_END< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.BIT_START" > BIT_START< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.BIT_END" > BIT_END< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.HEX_START" > HEX_START< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.HEX_END" > HEX_END< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.BYTE_START" > BYTE_START< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.BYTE_END" > BYTE_END< / a >
< / li >
2025-02-13 21:19:14 +01:00
< li >
< a class = "variable" href = "#DuckDB.UNICODE_START" > UNICODE_START< / a >
< / li >
< li >
< a class = "variable" href = "#DuckDB.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/duckdb.py" > Edit on GitHub< / a >
< h1 class = "modulename" >
< a href = "./../../sqlglot.html" > sqlglot< / a > < wbr > .< a href = "./../dialects.html" > dialects< / a > < wbr > .duckdb < / h1 >
< input id = "mod-duckdb-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-source-button" for = "mod-duckdb-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:53:39 +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 >
2025-02-13 21:17:09 +01:00
< / 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 >
2025-02-13 21:51:42 +01:00
< / span > < span id = "L-6" > < a href = "#L-6" > < span class = "linenos" > 6< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.expressions< / span > < span class = "kn" > import< / span > < span class = "n" > DATA_TYPE< / span >
< / span > < span id = "L-7" > < a href = "#L-7" > < span class = "linenos" > 7< / 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-8" > < a href = "#L-8" > < span class = "linenos" > 8< / span > < / a > < span class = "n" > Dialect< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-9" > < a href = "#L-9" > < span class = "linenos" > 9< / span > < / a > < span class = "n" > JSON_EXTRACT_TYPE< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-10" > < a href = "#L-10" > < span class = "linenos" > 10< / span > < / a > < span class = "n" > NormalizationStrategy< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-11" > < a href = "#L-11" > < span class = "linenos" > 11< / span > < / a > < span class = "n" > approx_count_distinct_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-12" > < a href = "#L-12" > < span class = "linenos" > 12< / span > < / a > < span class = "n" > arg_max_or_min_no_count< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-13" > < a href = "#L-13" > < span class = "linenos" > 13< / span > < / a > < span class = "n" > arrow_json_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-14" > < a href = "#L-14" > < span class = "linenos" > 14< / span > < / a > < span class = "n" > binary_from_function< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-15" > < a href = "#L-15" > < span class = "linenos" > 15< / span > < / a > < span class = "n" > bool_xor_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-16" > < a href = "#L-16" > < span class = "linenos" > 16< / span > < / a > < span class = "n" > build_default_decimal_type< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-17" > < a href = "#L-17" > < span class = "linenos" > 17< / span > < / a > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-18" > < a href = "#L-18" > < span class = "linenos" > 18< / span > < / a > < span class = "n" > datestrtodate_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_datetime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-20" > < a href = "#L-20" > < span class = "linenos" > 20< / span > < / a > < span class = "n" > encode_decode_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-21" > < a href = "#L-21" > < span class = "linenos" > 21< / span > < / a > < span class = "n" > build_formatted_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-22" > < a href = "#L-22" > < span class = "linenos" > 22< / span > < / a > < span class = "n" > inline_array_unless_query< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-23" > < a href = "#L-23" > < span class = "linenos" > 23< / span > < / a > < span class = "n" > no_comment_column_constraint_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-24" > < a href = "#L-24" > < span class = "linenos" > 24< / span > < / a > < span class = "n" > no_safe_divide_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-25" > < a href = "#L-25" > < span class = "linenos" > 25< / span > < / a > < span class = "n" > no_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-26" > < a href = "#L-26" > < span class = "linenos" > 26< / span > < / a > < span class = "n" > no_timestamp_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-27" > < a href = "#L-27" > < span class = "linenos" > 27< / span > < / a > < span class = "n" > pivot_column_names< / span > < span class = "p" > ,< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-28" > < a href = "#L-28" > < span class = "linenos" > 28< / span > < / a > < span class = "n" > rename_func< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-29" > < a href = "#L-29" > < span class = "linenos" > 29< / span > < / a > < span class = "n" > str_position_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-30" > < a href = "#L-30" > < span class = "linenos" > 30< / span > < / a > < span class = "n" > str_to_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-31" > < a href = "#L-31" > < span class = "linenos" > 31< / span > < / a > < span class = "n" > timestamptrunc_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-32" > < a href = "#L-32" > < span class = "linenos" > 32< / span > < / a > < span class = "n" > timestrtotime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-33" > < a href = "#L-33" > < span class = "linenos" > 33< / span > < / a > < span class = "n" > unit_to_var< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-34" > < a href = "#L-34" > < span class = "linenos" > 34< / span > < / a > < span class = "n" > unit_to_str< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-35" > < a href = "#L-35" > < span class = "linenos" > 35< / span > < / a > < span class = "n" > sha256_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-36" > < a href = "#L-36" > < span class = "linenos" > 36< / span > < / a > < span class = "n" > build_regexp_extract< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-37" > < a href = "#L-37" > < span class = "linenos" > 37< / span > < / a > < span class = "n" > explode_to_unnest_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-38" > < a href = "#L-38" > < span class = "linenos" > 38< / span > < / a > < span class = "p" > )< / 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.generator< / span > < span class = "kn" > import< / span > < span class = "n" > unsupported_args< / span >
2025-02-13 21:56:19 +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.helper< / span > < span class = "kn" > import< / span > < span class = "n" > seq_get< / span >
< / span > < span id = "L-41" > < a href = "#L-41" > < span class = "linenos" > 41< / 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-42" > < a href = "#L-42" > < span class = "linenos" > 42< / span > < / a > < span class = "kn" > from< / span > < span class = "nn" > sqlglot.parser< / span > < span class = "kn" > import< / span > < span class = "n" > binary_range_parser< / span >
< / span > < span id = "L-43" > < a href = "#L-43" > < span class = "linenos" > 43< / span > < / a >
< / span > < span id = "L-44" > < a href = "#L-44" > < span class = "linenos" > 44< / span > < / a > < span class = "n" > DATETIME_DELTA< / span > < span class = "o" > =< / span > < span class = "n" > t< / span > < span class = "o" > .< / span > < span class = "n" > Union< / span > < span class = "p" > [< / span >
< / span > < span id = "L-45" > < a href = "#L-45" > < span class = "linenos" > 45< / span > < / a > < 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" > TimeAdd< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeAdd< / 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 = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateSub< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeSub< / span >
< / span > < span id = "L-46" > < a href = "#L-46" > < span class = "linenos" > 46< / span > < / a > < span class = "p" > ]< / span >
< / span > < span id = "L-47" > < a href = "#L-47" > < span class = "linenos" > 47< / span > < / a >
< / span > < span id = "L-48" > < a href = "#L-48" > < span class = "linenos" > 48< / span > < / a > < span class = "n" > WINDOW_FUNCS_WITH_IGNORE_NULLS< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "L-49" > < a href = "#L-49" > < span class = "linenos" > 49< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > FirstValue< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-50" > < a href = "#L-50" > < span class = "linenos" > 50< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LastValue< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-51" > < a href = "#L-51" > < span class = "linenos" > 51< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Lag< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-52" > < a href = "#L-52" > < span class = "linenos" > 52< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Lead< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-53" > < a href = "#L-53" > < span class = "linenos" > 53< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > NthValue< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-54" > < a href = "#L-54" > < span class = "linenos" > 54< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-55" > < a href = "#L-55" > < span class = "linenos" > 55< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-56" > < a href = "#L-56" > < span class = "linenos" > 56< / span > < / a >
< / span > < span id = "L-57" > < a href = "#L-57" > < span class = "linenos" > 57< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _date_delta_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > DATETIME_DELTA< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-58" > < a href = "#L-58" > < span class = "linenos" > 58< / 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-59" > < a href = "#L-59" > < span class = "linenos" > 59< / span > < / a > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > unit_to_var< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-60" > < a href = "#L-60" > < span class = "linenos" > 60< / span > < / a > < span class = "n" > op< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "L-61" > < a href = "#L-61" > < span class = "linenos" > 61< / span > < / a > < span class = "s2" > " +" < / span >
< / span > < span id = "L-62" > < a href = "#L-62" > < span class = "linenos" > 62< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / 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" > TimeAdd< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeAdd< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-63" > < a href = "#L-63" > < span class = "linenos" > 63< / span > < / a > < span class = "k" > else< / span > < span class = "s2" > " -" < / span >
< / span > < span id = "L-64" > < a href = "#L-64" > < span class = "linenos" > 64< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-65" > < a href = "#L-65" > < span class = "linenos" > 65< / span > < / a >
< / span > < span id = "L-66" > < a href = "#L-66" > < span class = "linenos" > 66< / span > < / a > < span class = "n" > to_type< / 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" > DATA_TYPE< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "L-67" > < a href = "#L-67" > < span class = "linenos" > 67< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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 > < span id = "L-68" > < a href = "#L-68" > < span class = "linenos" > 68< / span > < / a > < span class = "n" > to_type< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > return_type< / span >
< / span > < span id = "L-69" > < a href = "#L-69" > < span class = "linenos" > 69< / span > < / a > < span class = "k" > elif< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "p" > :< / span >
< / span > < span id = "L-70" > < a href = "#L-70" > < span class = "linenos" > 70< / span > < / a > < span class = "c1" > # Cast string literals (i.e function parameters) to the appropriate type for +/- interval to work< / span >
< / span > < span id = "L-71" > < a href = "#L-71" > < span class = "linenos" > 71< / span > < / a > < span class = "n" > to_type< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "L-72" > < a href = "#L-72" > < span class = "linenos" > 72< / 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 > < span id = "L-73" > < a href = "#L-73" > < span class = "linenos" > 73< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeAdd< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeSub< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-74" > < a href = "#L-74" > < span class = "linenos" > 74< / span > < / a > < span class = "k" > else< / 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 > < span id = "L-75" > < a href = "#L-75" > < span class = "linenos" > 75< / span > < / a > < span class = "p" > )< / span >
< / 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 = "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" > this< / span > < span class = "p" > ,< / span > < span class = "n" > to_type< / span > < span class = "p" > )< / span > < span class = "k" > if< / span > < span class = "n" > to_type< / span > < span class = "k" > else< / span > < span class = "n" > this< / span >
< / span > < span id = "L-78" > < a href = "#L-78" > < span class = "linenos" > 78< / span > < / a >
< / span > < span id = "L-79" > < a href = "#L-79" > < span class = "linenos" > 79< / span > < / a > < span class = "k" > return< / 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" > this< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > < / span > < span class = "si" > {< / span > < span class = "n" > op< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > unit< / span > < span class = "p" > ))< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-80" > < a href = "#L-80" > < span class = "linenos" > 80< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-81" > < a href = "#L-81" > < span class = "linenos" > 81< / span > < / a >
< / span > < span id = "L-82" > < a href = "#L-82" > < span class = "linenos" > 82< / span > < / a > < span class = "c1" > # BigQuery -> DuckDB conversion for the DATE function< / span >
< / span > < span id = "L-83" > < a href = "#L-83" > < span class = "linenos" > 83< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _date_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > Date< / 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" > result< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " 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" > 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" > AS DATE)" < / span >
< / span > < span id = "L-85" > < a href = "#L-85" > < span class = "linenos" > 85< / span > < / a > < span class = "n" > zone< / 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" > " zone" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-86" > < a href = "#L-86" > < span class = "linenos" > 86< / span > < / a >
< / span > < span id = "L-87" > < a href = "#L-87" > < span class = "linenos" > 87< / span > < / a > < span class = "k" > if< / span > < span class = "n" > zone< / span > < span class = "p" > :< / span >
< / span > < span id = "L-88" > < a href = "#L-88" > < span class = "linenos" > 88< / span > < / a > < span class = "n" > date_str< / 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" > " STRFTIME" < / span > < span class = "p" > ,< / span > < span class = "n" > result< / span > < span class = "p" > ,< / span > < span class = "s2" > " ' < / span > < span class = "si" > %d< / span > < span class = "s2" > /%m/%Y' " < / span > < span class = "p" > )< / span >
< / span > < span id = "L-89" > < a href = "#L-89" > < span class = "linenos" > 89< / span > < / a > < span class = "n" > date_str< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > date_str< / span > < span class = "si" > }< / span > < span class = "s2" > || ' ' || < / span > < span class = "si" > {< / span > < span class = "n" > zone< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "L-90" > < a href = "#L-90" > < span class = "linenos" > 90< / span > < / a >
< / span > < span id = "L-91" > < a href = "#L-91" > < span class = "linenos" > 91< / span > < / a > < span class = "c1" > # This will create a TIMESTAMP with time zone information< / span >
< / span > < span id = "L-92" > < a href = "#L-92" > < span class = "linenos" > 92< / span > < / a > < span class = "n" > result< / 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" > " STRPTIME" < / span > < span class = "p" > ,< / span > < span class = "n" > date_str< / span > < span class = "p" > ,< / span > < span class = "s2" > " ' < / span > < span class = "si" > %d< / span > < span class = "s2" > /%m/%Y %Z' " < / span > < span class = "p" > )< / span >
< / span > < span id = "L-93" > < a href = "#L-93" > < span class = "linenos" > 93< / span > < / a >
< / span > < span id = "L-94" > < a href = "#L-94" > < span class = "linenos" > 94< / span > < / a > < span class = "k" > return< / span > < span class = "n" > result< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-95" > < a href = "#L-95" > < span class = "linenos" > 95< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-96" > < a href = "#L-96" > < span class = "linenos" > 96< / span > < / a >
< / span > < span id = "L-97" > < a href = "#L-97" > < span class = "linenos" > 97< / span > < / a > < span class = "c1" > # BigQuery -> DuckDB conversion for the TIME_DIFF function< / span >
< / span > < span id = "L-98" > < a href = "#L-98" > < span class = "linenos" > 98< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _timediff_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > TimeDiff< / 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" > TIME< / 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" > TIME< / span > < span class = "p" > )< / span >
< / span > < span id = "L-101" > < a href = "#L-101" > < span class = "linenos" > 101< / span > < / a >
< / span > < span id = "L-102" > < a href = "#L-102" > < span class = "linenos" > 102< / span > < / a > < span class = "c1" > # Although the 2 dialects share similar signatures, BQ seems to inverse< / span >
< / span > < span id = "L-103" > < a href = "#L-103" > < span class = "linenos" > 103< / span > < / a > < span class = "c1" > # the sign of the result so the start/end time operands are flipped< / span >
< / span > < span id = "L-104" > < a href = "#L-104" > < span class = "linenos" > 104< / 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_to_str< / span > < span class = "p" > (< / span > < span class = "n" > expression< / 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:55:40 +01:00
< / span > < span id = "L-105" > < a href = "#L-105" > < span class = "linenos" > 105< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-106" > < a href = "#L-106" > < span class = "linenos" > 106< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-107" > < a href = "#L-107" > < span class = "linenos" > 107< / span > < / a > < span class = "nd" > @unsupported_args< / span > < span class = "p" > ((< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ,< / span > < span class = "s2" > " DuckDB' s ARRAY_SORT does not support a comparator." < / span > < span class = "p" > ))< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-108" > < a href = "#L-108" > < span class = "linenos" > 108< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _array_sort_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > ArraySort< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-109" > < a href = "#L-109" > < span class = "linenos" > 109< / 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 >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-110" > < a href = "#L-110" > < span class = "linenos" > 110< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-111" > < a href = "#L-111" > < span class = "linenos" > 111< / span > < / a >
< / span > < span id = "L-112" > < a href = "#L-112" > < span class = "linenos" > 112< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _sort_array_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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-113" > < a href = "#L-113" > < span class = "linenos" > 113< / span > < / a > < span class = "n" > name< / span > < span class = "o" > =< / span > < span class = "s2" > " ARRAY_REVERSE_SORT" < / span > < 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 class = "k" > else< / span > < span class = "s2" > " ARRAY_SORT" < / span >
< / span > < span id = "L-114" > < a href = "#L-114" > < span class = "linenos" > 114< / 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 = "n" > name< / 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:55:40 +01:00
< / span > < span id = "L-115" > < a href = "#L-115" > < span class = "linenos" > 115< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-116" > < a href = "#L-116" > < span class = "linenos" > 116< / span > < / a >
< / span > < span id = "L-117" > < a href = "#L-117" > < span class = "linenos" > 117< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _build_sort_array_desc< / 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-118" > < a href = "#L-118" > < span class = "linenos" > 118< / span > < / a > < span class = "k" > return< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / 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" > asc< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > false< / span > < span class = "p" > ())< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-119" > < a href = "#L-119" > < span class = "linenos" > 119< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-120" > < a href = "#L-120" > < span class = "linenos" > 120< / span > < / a >
< / span > < span id = "L-121" > < a href = "#L-121" > < span class = "linenos" > 121< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _build_date_diff< / 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-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" > DateDiff< / 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" > 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 >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-123" > < a href = "#L-123" > < span class = "linenos" > 123< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-124" > < a href = "#L-124" > < span class = "linenos" > 124< / span > < / a >
< / span > < span id = "L-125" > < a href = "#L-125" > < span class = "linenos" > 125< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _build_generate_series< / span > < span class = "p" > (< / span > < span class = "n" > end_exclusive< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < 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" > t< / span > < span class = "o" > .< / span > < span class = "n" > List< / span > < span class = "p" > ],< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-126" > < a href = "#L-126" > < span class = "linenos" > 126< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _builder< / 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" > GenerateSeries< / span > < span class = "p" > :< / span >
< / span > < span id = "L-127" > < a href = "#L-127" > < span class = "linenos" > 127< / span > < / a > < span class = "c1" > # Check https://duckdb.org/docs/sql/functions/nested.html#range-functions< / span >
< / span > < span id = "L-128" > < a href = "#L-128" > < span class = "linenos" > 128< / 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" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "L-129" > < a href = "#L-129" > < span class = "linenos" > 129< / span > < / a > < span class = "c1" > # DuckDB uses 0 as a default for the series' start when it' s omitted< / span >
< / span > < span id = "L-130" > < a href = "#L-130" > < span class = "linenos" > 130< / span > < / a > < span class = "n" > args< / span > < span class = "o" > .< / span > < span class = "n" > insert< / span > < span class = "p" > (< / span > < span class = "mi" > 0< / span > < span class = "p" > ,< / 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 = "s2" > " 0" < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-131" > < a href = "#L-131" > < span class = "linenos" > 131< / span > < / a >
< / span > < span id = "L-132" > < a href = "#L-132" > < span class = "linenos" > 132< / span > < / a > < span class = "n" > gen_series< / span > < span class = "o" > =< / 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 class = "n" > args< / span > < span class = "p" > )< / span >
< / span > < span id = "L-133" > < a href = "#L-133" > < span class = "linenos" > 133< / span > < / a > < span class = "n" > gen_series< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " is_end_exclusive" < / span > < span class = "p" > ,< / span > < span class = "n" > end_exclusive< / span > < span class = "p" > )< / span >
< / span > < span id = "L-134" > < a href = "#L-134" > < span class = "linenos" > 134< / span > < / a >
< / span > < span id = "L-135" > < a href = "#L-135" > < span class = "linenos" > 135< / span > < / a > < span class = "k" > return< / span > < span class = "n" > gen_series< / span >
< / span > < span id = "L-136" > < a href = "#L-136" > < span class = "linenos" > 136< / span > < / a >
< / span > < span id = "L-137" > < a href = "#L-137" > < span class = "linenos" > 137< / span > < / a > < span class = "k" > return< / span > < span class = "n" > _builder< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-138" > < a href = "#L-138" > < span class = "linenos" > 138< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-139" > < a href = "#L-139" > < span class = "linenos" > 139< / span > < / a >
< / span > < span id = "L-140" > < a href = "#L-140" > < span class = "linenos" > 140< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _build_make_timestamp< / 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-141" > < a href = "#L-141" > < span class = "linenos" > 141< / 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" > 1< / 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 = "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" > scale< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > MICROS< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampFromParts< / span > < span class = "p" > (< / span >
< / span > < span id = "L-145" > < a href = "#L-145" > < span class = "linenos" > 145< / span > < / a > < span class = "n" > year< / 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-146" > < a href = "#L-146" > < span class = "linenos" > 146< / span > < / a > < span class = "n" > month< / 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-147" > < a href = "#L-147" > < span class = "linenos" > 147< / span > < / a > < span class = "n" > day< / 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-148" > < a href = "#L-148" > < span class = "linenos" > 148< / span > < / a > < span class = "n" > hour< / 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-149" > < a href = "#L-149" > < span class = "linenos" > 149< / span > < / a > < span class = "nb" > min< / 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" > 4< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-150" > < a href = "#L-150" > < span class = "linenos" > 150< / span > < / a > < span class = "n" > sec< / 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" > 5< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-151" > < a href = "#L-151" > < span class = "linenos" > 151< / span > < / a > < span class = "p" > )< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-152" > < a href = "#L-152" > < span class = "linenos" > 152< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-153" > < a href = "#L-153" > < span class = "linenos" > 153< / span > < / a >
< / span > < span id = "L-154" > < a href = "#L-154" > < span class = "linenos" > 154< / 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" > DuckDB< / 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" > Struct< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-155" > < a href = "#L-155" > < span class = "linenos" > 155< / span > < / a > < 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 = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "p" > []< / span >
< / span > < span id = "L-156" > < a href = "#L-156" > < span class = "linenos" > 156< / span > < / a >
< / span > < span id = "L-157" > < a href = "#L-157" > < span class = "linenos" > 157< / span > < / a > < span class = "c1" > # BigQuery allows inline construction such as " STRUCT< a STRING, b INTEGER> (' str' , 1)" which is< / span >
< / span > < span id = "L-158" > < a href = "#L-158" > < span class = "linenos" > 158< / span > < / a > < span class = "c1" > # canonicalized to " ROW(' str' , 1) AS STRUCT(a TEXT, b INT)" in DuckDB< / span >
< / span > < span id = "L-159" > < a href = "#L-159" > < span class = "linenos" > 159< / span > < / a > < span class = "c1" > # The transformation to ROW will take place if a cast to STRUCT / ARRAY of STRUCTs is found< / span >
< / span > < span id = "L-160" > < a href = "#L-160" > < span class = "linenos" > 160< / span > < / a > < span class = "n" > ancestor_cast< / span > < span class = "o" > =< / 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" > Cast< / span > < span class = "p" > )< / span >
< / span > < span id = "L-161" > < a href = "#L-161" > < span class = "linenos" > 161< / span > < / a > < span class = "n" > is_struct_cast< / span > < span class = "o" > =< / span > < span class = "n" > ancestor_cast< / span > < span class = "ow" > and< / span > < span class = "nb" > any< / span > < span class = "p" > (< / span >
< / span > < span id = "L-162" > < a href = "#L-162" > < span class = "linenos" > 162< / span > < / a > < span class = "n" > casted_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" > STRUCT< / span > < span class = "p" > )< / span >
< / span > < span id = "L-163" > < a href = "#L-163" > < span class = "linenos" > 163< / span > < / a > < span class = "k" > for< / span > < span class = "n" > casted_type< / span > < span class = "ow" > in< / span > < span class = "n" > ancestor_cast< / 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" > DataType< / span > < span class = "p" > )< / span >
< / span > < span id = "L-164" > < a href = "#L-164" > < span class = "linenos" > 164< / span > < / a > < span class = "p" > )< / span >
< / 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" > for< / span > < span class = "n" > i< / span > < span class = "p" > ,< / span > < span class = "n" > expr< / span > < span class = "ow" > in< / span > < span class = "nb" > enumerate< / 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-167" > < a href = "#L-167" > < span class = "linenos" > 167< / span > < / a > < span class = "n" > is_property_eq< / span > < span class = "o" > =< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > expr< / 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-168" > < a href = "#L-168" > < span class = "linenos" > 168< / span > < / a > < span class = "n" > value< / span > < span class = "o" > =< / span > < span class = "n" > expr< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "k" > if< / span > < span class = "n" > is_property_eq< / span > < span class = "k" > else< / span > < span class = "n" > expr< / span >
< / span > < span id = "L-169" > < a href = "#L-169" > < span class = "linenos" > 169< / span > < / a >
< / span > < span id = "L-170" > < a href = "#L-170" > < span class = "linenos" > 170< / span > < / a > < span class = "k" > if< / span > < span class = "n" > is_struct_cast< / span > < span class = "p" > :< / span >
< / span > < span id = "L-171" > < a href = "#L-171" > < span class = "linenos" > 171< / span > < / a > < span class = "n" > args< / 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" > value< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-172" > < a href = "#L-172" > < span class = "linenos" > 172< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "L-173" > < a href = "#L-173" > < span class = "linenos" > 173< / span > < / a > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "n" > expr< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "k" > if< / span > < span class = "n" > is_property_eq< / span > < span class = "k" > else< / span > < span class = "sa" > f< / span > < span class = "s2" > " _< / span > < span class = "si" > {< / span > < span class = "n" > i< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "L-174" > < a href = "#L-174" > < span class = "linenos" > 174< / span > < / a > < span class = "n" > args< / 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" > 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 = "n" > key< / 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" > value< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span > < span class = "p" > )< / span >
< / span > < span id = "L-175" > < a href = "#L-175" > < span class = "linenos" > 175< / span > < / a >
< / span > < span id = "L-176" > < a href = "#L-176" > < span class = "linenos" > 176< / span > < / a > < span class = "n" > csv_args< / 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" > args< / span > < span class = "p" > )< / span >
< / span > < span id = "L-177" > < a href = "#L-177" > < span class = "linenos" > 177< / span > < / a >
< / span > < span id = "L-178" > < a href = "#L-178" > < span class = "linenos" > 178< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " ROW(< / span > < span class = "si" > {< / span > < span class = "n" > csv_args< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span > < span class = "k" > if< / span > < span class = "n" > is_struct_cast< / span > < span class = "k" > else< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "se" > {{< / span > < span class = "si" > {< / span > < span class = "n" > csv_args< / span > < span class = "si" > }< / span > < span class = "se" > }}< / span > < span class = "s2" > " < / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-179" > < a href = "#L-179" > < span class = "linenos" > 179< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-180" > < a href = "#L-180" > < span class = "linenos" > 180< / span > < / a >
< / span > < span id = "L-181" > < a href = "#L-181" > < span class = "linenos" > 181< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _datatype_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > DataType< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-182" > < a href = "#L-182" > < span class = "linenos" > 182< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span > < span class = "s2" > " array" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-183" > < a href = "#L-183" > < span class = "linenos" > 183< / span > < / a > < span class = "k" > return< / 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" > expressions< / span > < span class = "p" > (< / span > < span class = "n" > expression< / 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 = "si" > {< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > key< / span > < span class = "o" > =< / span > < span class = "s1" > ' values' < / 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 > < span id = "L-184" > < a href = "#L-184" > < span class = "linenos" > 184< / span > < / a >
< / span > < span id = "L-185" > < a href = "#L-185" > < span class = "linenos" > 185< / span > < / a > < span class = "c1" > # Modifiers are not supported for TIME, [TIME | TIMESTAMP] WITH TIME ZONE< / span >
< / span > < span id = "L-186" > < a href = "#L-186" > < span class = "linenos" > 186< / span > < / a > < span class = "k" > if< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > is_type< / span > < span class = "p" > (< / span >
< / span > < span id = "L-187" > < a href = "#L-187" > < span class = "linenos" > 187< / 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" > TIME< / 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" > TIMETZ< / 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" > TIMESTAMPTZ< / span >
< / span > < span id = "L-188" > < a href = "#L-188" > < span class = "linenos" > 188< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "L-189" > < a href = "#L-189" > < span class = "linenos" > 189< / span > < / a > < span class = "k" > return< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > value< / span >
< / span > < span id = "L-190" > < a href = "#L-190" > < span class = "linenos" > 190< / span > < / a >
< / span > < span id = "L-191" > < a href = "#L-191" > < span class = "linenos" > 191< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > datatype_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-192" > < a href = "#L-192" > < span class = "linenos" > 192< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-193" > < a href = "#L-193" > < span class = "linenos" > 193< / span > < / a >
< / span > < span id = "L-194" > < a href = "#L-194" > < span class = "linenos" > 194< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _json_format_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > JSONFormat< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-195" > < a href = "#L-195" > < span class = "linenos" > 195< / span > < / a > < span class = "n" > sql< / 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" > " TO_JSON" < / 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" > " options" < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-196" > < a href = "#L-196" > < span class = "linenos" > 196< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / span > < span class = "si" > {< / span > < span class = "n" > sql< / span > < span class = "si" > }< / span > < span class = "s2" > AS TEXT)" < / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-197" > < a href = "#L-197" > < span class = "linenos" > 197< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-198" > < a href = "#L-198" > < span class = "linenos" > 198< / span > < / a >
< / span > < span id = "L-199" > < a href = "#L-199" > < span class = "linenos" > 199< / 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" > DuckDB< / 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-200" > < a href = "#L-200" > < span class = "linenos" > 200< / 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-201" > < a href = "#L-201" > < span class = "linenos" > 201< / span > < / a > < span class = "n" > timestamp< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-202" > < a href = "#L-202" > < span class = "linenos" > 202< / span > < / a >
< / span > < span id = "L-203" > < a href = "#L-203" > < span class = "linenos" > 203< / 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-204" > < a href = "#L-204" > < span class = "linenos" > 204< / 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_TIMESTAMP" < / span > < span class = "p" > ,< / span > < span class = "n" > timestamp< / span > < span class = "p" > )< / span >
< / span > < span id = "L-205" > < a href = "#L-205" > < span class = "linenos" > 205< / span > < / a > < span class = "k" > if< / span > < span class = "n" > scale< / span > < span class = "o" > ==< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > MILLIS< / span > < span class = "p" > :< / span >
< / span > < span id = "L-206" > < a href = "#L-206" > < span class = "linenos" > 206< / 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" > " EPOCH_MS" < / span > < span class = "p" > ,< / span > < span class = "n" > timestamp< / span > < span class = "p" > )< / span >
< / span > < span id = "L-207" > < a href = "#L-207" > < span class = "linenos" > 207< / span > < / a > < span class = "k" > if< / span > < span class = "n" > scale< / span > < span class = "o" > ==< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > MICROS< / span > < span class = "p" > :< / span >
< / span > < span id = "L-208" > < a href = "#L-208" > < span class = "linenos" > 208< / 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" > " MAKE_TIMESTAMP" < / span > < span class = "p" > ,< / span > < span class = "n" > timestamp< / span > < span class = "p" > )< / span >
< / span > < span id = "L-209" > < a href = "#L-209" > < span class = "linenos" > 209< / span > < / a >
< / span > < span id = "L-210" > < a href = "#L-210" > < span class = "linenos" > 210< / 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_TIMESTAMP" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Div< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > timestamp< / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > func< / span > < span class = "p" > (< / span > < span class = "s2" > " POW" < / span > < span class = "p" > ,< / span > < span class = "mi" > 10< / span > < span class = "p" > ,< / span > < span class = "n" > scale< / span > < span class = "p" > )))< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-211" > < a href = "#L-211" > < span class = "linenos" > 211< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-212" > < a href = "#L-212" > < span class = "linenos" > 212< / span > < / a >
< / span > < span id = "L-213" > < a href = "#L-213" > < span class = "linenos" > 213< / span > < / a > < span class = "n" > WRAPPED_JSON_EXTRACT_EXPRESSIONS< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Binary< / 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 = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > In< / span > < span class = "p" > )< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-214" > < a href = "#L-214" > < span class = "linenos" > 214< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-215" > < a href = "#L-215" > < span class = "linenos" > 215< / span > < / a >
< / span > < span id = "L-216" > < a href = "#L-216" > < span class = "linenos" > 216< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _arrow_json_extract_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > JSON_EXTRACT_TYPE< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-217" > < a href = "#L-217" > < span class = "linenos" > 217< / span > < / a > < span class = "n" > arrow_sql< / span > < span class = "o" > =< / span > < span class = "n" > arrow_json_extract_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 > < span id = "L-218" > < a href = "#L-218" > < span class = "linenos" > 218< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > same_parent< / span > < span class = "ow" > and< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span >
< / span > < span id = "L-219" > < a href = "#L-219" > < span class = "linenos" > 219< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > parent< / span > < span class = "p" > ,< / span > < span class = "n" > WRAPPED_JSON_EXTRACT_EXPRESSIONS< / span >
< / span > < span id = "L-220" > < a href = "#L-220" > < span class = "linenos" > 220< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "L-221" > < a href = "#L-221" > < span class = "linenos" > 221< / span > < / a > < span class = "n" > arrow_sql< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > wrap< / span > < span class = "p" > (< / span > < span class = "n" > arrow_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "L-222" > < a href = "#L-222" > < span class = "linenos" > 222< / span > < / a > < span class = "k" > return< / span > < span class = "n" > arrow_sql< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-223" > < a href = "#L-223" > < span class = "linenos" > 223< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-224" > < a href = "#L-224" > < span class = "linenos" > 224< / span > < / a >
< / span > < span id = "L-225" > < a href = "#L-225" > < span class = "linenos" > 225< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _implicit_datetime_cast< / span > < span class = "p" > (< / span >
< / span > < span id = "L-226" > < a href = "#L-226" > < span class = "linenos" > 226< / span > < / a > < span class = "n" > arg< / 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" > Expression< / span > < span class = "p" > ],< / span > < span class = "nb" > 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" > 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 > < span id = "L-227" > < a href = "#L-227" > < span class = "linenos" > 227< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-228" > < a href = "#L-228" > < span class = "linenos" > 228< / 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" > arg< / span > < span class = "p" > ,< / span > < span class = "nb" > type< / span > < span class = "p" > )< / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > arg< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "p" > )< / span > < span class = "k" > else< / span > < span class = "n" > arg< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-229" > < a href = "#L-229" > < span class = "linenos" > 229< / span > < / a >
2025-02-13 21:56:19 +01:00
< / 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 = "k" > def< / span > < span class = "nf" > _date_diff_sql< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > DateDiff< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-232" > < a href = "#L-232" > < span class = "linenos" > 232< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > _implicit_datetime_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 > < span id = "L-233" > < a href = "#L-233" > < span class = "linenos" > 233< / span > < / a > < span class = "n" > expr< / span > < span class = "o" > =< / span > < span class = "n" > _implicit_datetime_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 > < span id = "L-234" > < a href = "#L-234" > < span class = "linenos" > 234< / span > < / a >
< / span > < span id = "L-235" > < a href = "#L-235" > < span class = "linenos" > 235< / 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_to_str< / span > < span class = "p" > (< / span > < span class = "n" > expression< / 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:55:40 +01:00
< / span > < span id = "L-236" > < a href = "#L-236" > < span class = "linenos" > 236< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-237" > < a href = "#L-237" > < span class = "linenos" > 237< / span > < / a >
< / span > < span id = "L-238" > < a href = "#L-238" > < span class = "linenos" > 238< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _generate_datetime_array_sql< / span > < span class = "p" > (< / span >
< / span > < span id = "L-239" > < a href = "#L-239" > < span class = "linenos" > 239< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "n" > DuckDB< / 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" > 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" > GenerateDateArray< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateTimestampArray< / 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 class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-241" > < a href = "#L-241" > < span class = "linenos" > 241< / span > < / a > < span class = "n" > is_generate_date_array< / span > < span class = "o" > =< / span > < span class = "nb" > isinstance< / 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" > GenerateDateArray< / span > < span class = "p" > )< / span >
< / span > < span id = "L-242" > < a href = "#L-242" > < span class = "linenos" > 242< / span > < / a >
< / span > < span id = "L-243" > < a href = "#L-243" > < span class = "linenos" > 243< / span > < / a > < span class = "nb" > type< / 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" > DATE< / span > < span class = "k" > if< / span > < span class = "n" > is_generate_date_array< / span > < span class = "k" > else< / 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 > < span id = "L-244" > < a href = "#L-244" > < span class = "linenos" > 244< / span > < / a > < span class = "n" > start< / span > < span class = "o" > =< / span > < span class = "n" > _implicit_datetime_cast< / 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" > " start" < / span > < span class = "p" > ),< / span > < span class = "nb" > type< / span > < span class = "o" > =< / span > < span class = "nb" > type< / span > < span class = "p" > )< / span >
< / span > < span id = "L-245" > < a href = "#L-245" > < span class = "linenos" > 245< / span > < / a > < span class = "n" > end< / span > < span class = "o" > =< / span > < span class = "n" > _implicit_datetime_cast< / 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" > " end" < / span > < span class = "p" > ),< / span > < span class = "nb" > type< / span > < span class = "o" > =< / span > < span class = "nb" > type< / span > < span class = "p" > )< / 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 = "c1" > # BQ' s GENERATE_DATE_ARRAY & GENERATE_TIMESTAMP_ARRAY are transformed to DuckDB' S GENERATE_SERIES< / span >
< / span > < span id = "L-248" > < a href = "#L-248" > < span class = "linenos" > 248< / span > < / a > < span class = "n" > gen_series< / span > < span class = "p" > :< / 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" > GenerateSeries< / 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 = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateSeries< / span > < span class = "p" > (< / span >
< / span > < span id = "L-249" > < a href = "#L-249" > < span class = "linenos" > 249< / span > < / a > < span class = "n" > start< / span > < span class = "o" > =< / span > < span class = "n" > start< / span > < span class = "p" > ,< / span > < span class = "n" > end< / span > < span class = "o" > =< / span > < span class = "n" > end< / span > < span class = "p" > ,< / span > < span class = "n" > step< / 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" > " step" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-250" > < a href = "#L-250" > < span class = "linenos" > 250< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-251" > < a href = "#L-251" > < span class = "linenos" > 251< / span > < / a >
< / span > < span id = "L-252" > < a href = "#L-252" > < span class = "linenos" > 252< / span > < / a > < span class = "k" > if< / span > < span class = "n" > is_generate_date_array< / span > < span class = "p" > :< / span >
< / span > < span id = "L-253" > < a href = "#L-253" > < span class = "linenos" > 253< / span > < / a > < span class = "c1" > # The GENERATE_SERIES result type is TIMESTAMP array, so to match BQ' s semantics for< / span >
< / span > < span id = "L-254" > < a href = "#L-254" > < span class = "linenos" > 254< / span > < / a > < span class = "c1" > # GENERATE_DATE_ARRAY we must cast it back to DATE array< / span >
< / span > < span id = "L-255" > < a href = "#L-255" > < span class = "linenos" > 255< / span > < / a > < span class = "n" > gen_series< / 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" > gen_series< / 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" > build< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY< DATE> " < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-256" > < a href = "#L-256" > < span class = "linenos" > 256< / span > < / a >
< / span > < span id = "L-257" > < a href = "#L-257" > < span class = "linenos" > 257< / 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" > gen_series< / span > < span class = "p" > )< / span >
2025-02-13 21:55:40 +01:00
< / span > < span id = "L-258" > < a href = "#L-258" > < span class = "linenos" > 258< / span > < / a >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-259" > < a href = "#L-259" > < span class = "linenos" > 259< / span > < / a >
< / span > < span id = "L-260" > < a href = "#L-260" > < span class = "linenos" > 260< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > DuckDB< / span > < span class = "p" > (< / span > < span class = "n" > Dialect< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-261" > < a href = "#L-261" > < span class = "linenos" > 261< / span > < / a > < span class = "n" > NULL_ORDERING< / span > < span class = "o" > =< / span > < span class = "s2" > " nulls_are_last" < / span >
< / span > < span id = "L-262" > < a href = "#L-262" > < span class = "linenos" > 262< / span > < / a > < span class = "n" > SUPPORTS_USER_DEFINED_TYPES< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-263" > < a href = "#L-263" > < span class = "linenos" > 263< / span > < / a > < span class = "n" > SAFE_DIVISION< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-264" > < a href = "#L-264" > < span class = "linenos" > 264< / span > < / a > < span class = "n" > INDEX_OFFSET< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span >
< / span > < span id = "L-265" > < a href = "#L-265" > < span class = "linenos" > 265< / span > < / a > < span class = "n" > CONCAT_COALESCE< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-266" > < a href = "#L-266" > < span class = "linenos" > 266< / span > < / a > < span class = "n" > SUPPORTS_ORDER_BY_ALL< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-267" > < a href = "#L-267" > < span class = "linenos" > 267< / span > < / a > < span class = "n" > SUPPORTS_FIXED_SIZE_ARRAYS< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-268" > < a href = "#L-268" > < span class = "linenos" > 268< / span > < / a > < span class = "n" > STRICT_JSON_PATH_SYNTAX< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-269" > < a href = "#L-269" > < span class = "linenos" > 269< / span > < / a >
< / span > < span id = "L-270" > < a href = "#L-270" > < span class = "linenos" > 270< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/introduction.html#creating-a-new-table< / span >
< / span > < span id = "L-271" > < a href = "#L-271" > < span class = "linenos" > 271< / 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-272" > < a href = "#L-272" > < span class = "linenos" > 272< / span > < / a >
< / span > < span id = "L-273" > < a href = "#L-273" > < span class = "linenos" > 273< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > to_json_path< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > path< / 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" > Expression< / span > < span class = "p" > ])< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-274" > < a href = "#L-274" > < span class = "linenos" > 274< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > path< / 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-275" > < a href = "#L-275" > < span class = "linenos" > 275< / span > < / a > < span class = "c1" > # DuckDB also supports the JSON pointer syntax, where every path starts with a `/`.< / span >
< / span > < span id = "L-276" > < a href = "#L-276" > < span class = "linenos" > 276< / span > < / a > < span class = "c1" > # Additionally, it allows accessing the back of lists using the `[#-i]` syntax.< / span >
< / span > < span id = "L-277" > < a href = "#L-277" > < span class = "linenos" > 277< / span > < / a > < span class = "c1" > # This check ensures we' ll avoid trying to parse these as JSON paths, which can< / span >
< / span > < span id = "L-278" > < a href = "#L-278" > < span class = "linenos" > 278< / span > < / a > < span class = "c1" > # either result in a noisy warning or in an invalid representation of the path.< / span >
< / span > < span id = "L-279" > < a href = "#L-279" > < span class = "linenos" > 279< / span > < / a > < span class = "n" > path_text< / span > < span class = "o" > =< / span > < span class = "n" > path< / span > < span class = "o" > .< / span > < span class = "n" > name< / span >
< / span > < span id = "L-280" > < a href = "#L-280" > < span class = "linenos" > 280< / span > < / a > < span class = "k" > if< / span > < span class = "n" > path_text< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " /" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "s2" > " [#" < / span > < span class = "ow" > in< / span > < span class = "n" > path_text< / span > < span class = "p" > :< / span >
< / span > < span id = "L-281" > < a href = "#L-281" > < span class = "linenos" > 281< / span > < / a > < span class = "k" > return< / span > < span class = "n" > path< / span >
< / span > < span id = "L-282" > < a href = "#L-282" > < span class = "linenos" > 282< / span > < / a >
< / span > < span id = "L-283" > < a href = "#L-283" > < span class = "linenos" > 283< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > to_json_path< / span > < span class = "p" > (< / span > < span class = "n" > path< / span > < span class = "p" > )< / span >
< / span > < span id = "L-284" > < a href = "#L-284" > < span class = "linenos" > 284< / span > < / a >
< / span > < span id = "L-285" > < a href = "#L-285" > < span class = "linenos" > 285< / 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-286" > < a href = "#L-286" > < span class = "linenos" > 286< / span > < / a > < span class = "n" > HEREDOC_STRINGS< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "s2" > " $" < / span > < span class = "p" > ]< / span >
< / span > < span id = "L-287" > < a href = "#L-287" > < span class = "linenos" > 287< / span > < / a >
< / span > < span id = "L-288" > < a href = "#L-288" > < span class = "linenos" > 288< / span > < / a > < span class = "n" > HEREDOC_TAG_IS_IDENTIFIER< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-289" > < a href = "#L-289" > < span class = "linenos" > 289< / span > < / a > < span class = "n" > HEREDOC_STRING_ALTERNATIVE< / span > < span class = "o" > =< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span >
< / span > < span id = "L-290" > < a href = "#L-290" > < span class = "linenos" > 290< / span > < / a >
< / span > < span id = "L-291" > < a href = "#L-291" > < span class = "linenos" > 291< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-292" > < a href = "#L-292" > < span class = "linenos" > 292< / 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-293" > < a href = "#L-293" > < span class = "linenos" > 293< / span > < / a > < span class = "s2" > " //" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DIV< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-294" > < a href = "#L-294" > < span class = "linenos" > 294< / span > < / a > < span class = "s2" > " **" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DSTAR< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-295" > < a href = "#L-295" > < span class = "linenos" > 295< / span > < / a > < span class = "s2" > " ^@" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET_AT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-296" > < a href = "#L-296" > < span class = "linenos" > 296< / span > < / a > < span class = "s2" > " @> " < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > AT_GT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-297" > < a href = "#L-297" > < span class = "linenos" > 297< / span > < / a > < span class = "s2" > " < @" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > LT_AT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-298" > < a href = "#L-298" > < span class = "linenos" > 298< / span > < / a > < span class = "s2" > " ATTACH" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > COMMAND< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-299" > < a href = "#L-299" > < span class = "linenos" > 299< / span > < / a > < span class = "s2" > " BINARY" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > VARBINARY< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-300" > < a href = "#L-300" > < span class = "linenos" > 300< / span > < / a > < span class = "s2" > " BITSTRING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BIT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-301" > < a href = "#L-301" > < span class = "linenos" > 301< / span > < / a > < span class = "s2" > " BPCHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-302" > < a href = "#L-302" > < span class = "linenos" > 302< / span > < / a > < span class = "s2" > " CHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-303" > < a href = "#L-303" > < span class = "linenos" > 303< / span > < / a > < span class = "s2" > " CHARACTER VARYING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-304" > < a href = "#L-304" > < span class = "linenos" > 304< / span > < / a > < span class = "s2" > " EXCLUDE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > EXCEPT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-305" > < a href = "#L-305" > < span class = "linenos" > 305< / span > < / a > < span class = "s2" > " LOGICAL" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BOOLEAN< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-306" > < a href = "#L-306" > < span class = "linenos" > 306< / span > < / a > < span class = "s2" > " ONLY" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > ONLY< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-307" > < a href = "#L-307" > < span class = "linenos" > 307< / span > < / a > < span class = "s2" > " PIVOT_WIDER" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PIVOT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-308" > < a href = "#L-308" > < span class = "linenos" > 308< / span > < / a > < span class = "s2" > " POSITIONAL" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > POSITIONAL< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-309" > < a href = "#L-309" > < span class = "linenos" > 309< / span > < / a > < span class = "s2" > " SIGNED" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > INT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-310" > < a href = "#L-310" > < span class = "linenos" > 310< / span > < / a > < span class = "s2" > " STRING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-311" > < a href = "#L-311" > < span class = "linenos" > 311< / span > < / a > < span class = "s2" > " SUMMARIZE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > SUMMARIZE< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-312" > < a href = "#L-312" > < span class = "linenos" > 312< / span > < / a > < span class = "s2" > " TIMESTAMP_S" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_S< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-313" > < a href = "#L-313" > < span class = "linenos" > 313< / span > < / a > < span class = "s2" > " TIMESTAMP_MS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_MS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-314" > < a href = "#L-314" > < span class = "linenos" > 314< / span > < / a > < span class = "s2" > " TIMESTAMP_NS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_NS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-315" > < a href = "#L-315" > < span class = "linenos" > 315< / span > < / a > < span class = "s2" > " TIMESTAMP_US" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-316" > < a href = "#L-316" > < span class = "linenos" > 316< / span > < / a > < span class = "s2" > " UBIGINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UBIGINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-317" > < a href = "#L-317" > < span class = "linenos" > 317< / span > < / a > < span class = "s2" > " UINTEGER" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-318" > < a href = "#L-318" > < span class = "linenos" > 318< / span > < / a > < span class = "s2" > " USMALLINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > USMALLINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-319" > < a href = "#L-319" > < span class = "linenos" > 319< / span > < / a > < span class = "s2" > " UTINYINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UTINYINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-320" > < a href = "#L-320" > < span class = "linenos" > 320< / span > < / a > < span class = "s2" > " VARCHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-321" > < a href = "#L-321" > < span class = "linenos" > 321< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-322" > < a href = "#L-322" > < span class = "linenos" > 322< / 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-323" > < a href = "#L-323" > < span class = "linenos" > 323< / span > < / a >
< / span > < span id = "L-324" > < a href = "#L-324" > < span class = "linenos" > 324< / span > < / a > < span class = "n" > SINGLE_TOKENS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-325" > < a href = "#L-325" > < span class = "linenos" > 325< / 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" > SINGLE_TOKENS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-326" > < a href = "#L-326" > < span class = "linenos" > 326< / span > < / a > < span class = "s2" > " $" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-327" > < a href = "#L-327" > < span class = "linenos" > 327< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-328" > < a href = "#L-328" > < span class = "linenos" > 328< / span > < / a >
< / span > < span id = "L-329" > < a href = "#L-329" > < span class = "linenos" > 329< / 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-330" > < a href = "#L-330" > < span class = "linenos" > 330< / span > < / a > < span class = "n" > BITWISE< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-331" > < a href = "#L-331" > < span class = "linenos" > 331< / 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" > BITWISE< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-332" > < a href = "#L-332" > < span class = "linenos" > 332< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TILDA< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-333" > < a href = "#L-333" > < span class = "linenos" > 333< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-334" > < a href = "#L-334" > < span class = "linenos" > 334< / span > < / a > < span class = "n" > BITWISE< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET< / span > < span class = "p" > )< / span >
< / span > < span id = "L-335" > < a href = "#L-335" > < span class = "linenos" > 335< / span > < / a >
< / span > < span id = "L-336" > < a href = "#L-336" > < span class = "linenos" > 336< / span > < / a > < span class = "n" > RANGE_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-337" > < a href = "#L-337" > < span class = "linenos" > 337< / 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" > RANGE_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-338" > < a href = "#L-338" > < span class = "linenos" > 338< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DAMP< / span > < span class = "p" > :< / span > < span class = "n" > binary_range_parser< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayOverlaps< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-339" > < a href = "#L-339" > < span class = "linenos" > 339< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET_AT< / span > < span class = "p" > :< / span > < span class = "n" > binary_range_parser< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StartsWith< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-340" > < a href = "#L-340" > < span class = "linenos" > 340< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-341" > < a href = "#L-341" > < span class = "linenos" > 341< / span > < / a >
< / span > < span id = "L-342" > < a href = "#L-342" > < span class = "linenos" > 342< / span > < / a > < span class = "n" > EXPONENT< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-343" > < a href = "#L-343" > < span class = "linenos" > 343< / 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" > EXPONENT< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-344" > < a href = "#L-344" > < span class = "linenos" > 344< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pow< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-345" > < a href = "#L-345" > < span class = "linenos" > 345< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DSTAR< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pow< / 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" > FUNCTIONS_WITH_ALIASED_ARGS< / span > < span class = "o" > =< / span > < span class = "p" > {< / 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" > FUNCTIONS_WITH_ALIASED_ARGS< / span > < span class = "p" > ,< / span > < span class = "s2" > " STRUCT_PACK" < / span > < span class = "p" > }< / span >
< / span > < span id = "L-349" > < a href = "#L-349" > < span class = "linenos" > 349< / span > < / a >
< / span > < span id = "L-350" > < a href = "#L-350" > < span class = "linenos" > 350< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-351" > < a href = "#L-351" > < span class = "linenos" > 351< / 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-352" > < a href = "#L-352" > < span class = "linenos" > 352< / span > < / a > < span class = "s2" > " ARRAY_REVERSE_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > _build_sort_array_desc< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-353" > < a href = "#L-353" > < span class = "linenos" > 353< / span > < / a > < span class = "s2" > " ARRAY_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-354" > < a href = "#L-354" > < span class = "linenos" > 354< / span > < / a > < span class = "s2" > " DATEDIFF" < / span > < span class = "p" > :< / span > < span class = "n" > _build_date_diff< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-355" > < a href = "#L-355" > < span class = "linenos" > 355< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > :< / span > < span class = "n" > _build_date_diff< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-356" > < a href = "#L-356" > < span class = "linenos" > 356< / 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-357" > < a href = "#L-357" > < span class = "linenos" > 357< / span > < / a > < span class = "s2" > " DATETRUNC" < / span > < span class = "p" > :< / span > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-358" > < a href = "#L-358" > < span class = "linenos" > 358< / span > < / a > < span class = "s2" > " DECODE" < / 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-359" > < a href = "#L-359" > < span class = "linenos" > 359< / 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-360" > < a href = "#L-360" > < span class = "linenos" > 360< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-361" > < a href = "#L-361" > < span class = "linenos" > 361< / span > < / a > < span class = "s2" > " ENCODE" < / 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-362" > < a href = "#L-362" > < span class = "linenos" > 362< / 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-363" > < a href = "#L-363" > < span class = "linenos" > 363< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-364" > < a href = "#L-364" > < span class = "linenos" > 364< / span > < / a > < span class = "s2" > " EPOCH" < / 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-365" > < a href = "#L-365" > < span class = "linenos" > 365< / span > < / a > < span class = "s2" > " EPOCH_MS" < / 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" > UnixToTime< / span > < span class = "p" > (< / span >
< / span > < span id = "L-366" > < a href = "#L-366" > < span class = "linenos" > 366< / 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" > scale< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > MILLIS< / span >
< / span > < span id = "L-367" > < a href = "#L-367" > < span class = "linenos" > 367< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-368" > < a href = "#L-368" > < span class = "linenos" > 368< / span > < / a > < span class = "s2" > " JSON" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ParseJSON< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-369" > < a href = "#L-369" > < span class = "linenos" > 369< / span > < / a > < span class = "s2" > " JSON_EXTRACT_PATH" < / span > < span class = "p" > :< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > build_extract_json_with_path< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-370" > < a href = "#L-370" > < span class = "linenos" > 370< / span > < / a > < span class = "s2" > " JSON_EXTRACT_STRING" < / span > < span class = "p" > :< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > build_extract_json_with_path< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtractScalar< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-371" > < a href = "#L-371" > < span class = "linenos" > 371< / span > < / a > < span class = "s2" > " LIST_HAS" < / 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-372" > < a href = "#L-372" > < span class = "linenos" > 372< / span > < / a > < span class = "s2" > " LIST_REVERSE_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > _build_sort_array_desc< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-373" > < a href = "#L-373" > < span class = "linenos" > 373< / span > < / a > < span class = "s2" > " LIST_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-374" > < a href = "#L-374" > < span class = "linenos" > 374< / span > < / a > < span class = "s2" > " LIST_VALUE" < / 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" > Array< / span > < span class = "p" > (< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "n" > args< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-375" > < a href = "#L-375" > < span class = "linenos" > 375< / span > < / a > < span class = "s2" > " MAKE_TIME" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeFromParts< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-376" > < a href = "#L-376" > < span class = "linenos" > 376< / span > < / a > < span class = "s2" > " MAKE_TIMESTAMP" < / span > < span class = "p" > :< / span > < span class = "n" > _build_make_timestamp< / span > < span class = "p" > ,< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-377" > < a href = "#L-377" > < span class = "linenos" > 377< / span > < / a > < span class = "s2" > " QUANTILE_CONT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileCont< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-378" > < a href = "#L-378" > < span class = "linenos" > 378< / span > < / a > < span class = "s2" > " QUANTILE_DISC" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileDisc< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-379" > < a href = "#L-379" > < span class = "linenos" > 379< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-380" > < a href = "#L-380" > < span class = "linenos" > 380< / span > < / a > < span class = "s2" > " REGEXP_MATCHES" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-381" > < a href = "#L-381" > < span class = "linenos" > 381< / 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-382" > < a href = "#L-382" > < span class = "linenos" > 382< / 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-383" > < a href = "#L-383" > < span class = "linenos" > 383< / 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-384" > < a href = "#L-384" > < span class = "linenos" > 384< / 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 > < span id = "L-385" > < a href = "#L-385" > < span class = "linenos" > 385< / span > < / a > < span class = "n" > modifiers< / 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-386" > < a href = "#L-386" > < span class = "linenos" > 386< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-387" > < a href = "#L-387" > < span class = "linenos" > 387< / span > < / a > < span class = "s2" > " STRFTIME" < / 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" > " duckdb" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-388" > < a href = "#L-388" > < span class = "linenos" > 388< / span > < / a > < span class = "s2" > " STRING_SPLIT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-389" > < a href = "#L-389" > < span class = "linenos" > 389< / span > < / a > < span class = "s2" > " STRING_SPLIT_REGEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-390" > < a href = "#L-390" > < span class = "linenos" > 390< / span > < / a > < span class = "s2" > " STRING_TO_ARRAY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-391" > < a href = "#L-391" > < span class = "linenos" > 391< / span > < / a > < span class = "s2" > " STRPTIME" < / 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" > " duckdb" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-392" > < a href = "#L-392" > < span class = "linenos" > 392< / span > < / a > < span class = "s2" > " STRUCT_PACK" < / 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-393" > < a href = "#L-393" > < span class = "linenos" > 393< / span > < / a > < span class = "s2" > " STR_SPLIT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-394" > < a href = "#L-394" > < span class = "linenos" > 394< / span > < / a > < span class = "s2" > " STR_SPLIT_REGEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-395" > < a href = "#L-395" > < span class = "linenos" > 395< / span > < / a > < span class = "s2" > " TO_TIMESTAMP" < / 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" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-396" > < a href = "#L-396" > < span class = "linenos" > 396< / span > < / a > < span class = "s2" > " UNNEST" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Explode< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-397" > < a href = "#L-397" > < span class = "linenos" > 397< / span > < / a > < span class = "s2" > " 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-398" > < a href = "#L-398" > < span class = "linenos" > 398< / span > < / a > < span class = "s2" > " GENERATE_SERIES" < / span > < span class = "p" > :< / span > < span class = "n" > _build_generate_series< / span > < span class = "p" > (),< / span >
< / span > < span id = "L-399" > < a href = "#L-399" > < span class = "linenos" > 399< / span > < / a > < span class = "s2" > " RANGE" < / span > < span class = "p" > :< / span > < span class = "n" > _build_generate_series< / span > < span class = "p" > (< / span > < span class = "n" > end_exclusive< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-400" > < a href = "#L-400" > < span class = "linenos" > 400< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-401" > < a href = "#L-401" > < span class = "linenos" > 401< / span > < / a >
< / span > < span id = "L-402" > < a href = "#L-402" > < span class = "linenos" > 402< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_SUB" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-403" > < a href = "#L-403" > < span class = "linenos" > 403< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " GLOB" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-404" > < a href = "#L-404" > < span class = "linenos" > 404< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-405" > < a href = "#L-405" > < span class = "linenos" > 405< / 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-406" > < a href = "#L-406" > < span class = "linenos" > 406< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " DECODE" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-407" > < a href = "#L-407" > < span class = "linenos" > 407< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-408" > < a href = "#L-408" > < span class = "linenos" > 408< / span > < / a > < span class = "n" > NO_PAREN_FUNCTION_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-409" > < a href = "#L-409" > < span class = "linenos" > 409< / 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" > NO_PAREN_FUNCTION_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-410" > < a href = "#L-410" > < span class = "linenos" > 410< / span > < / a > < span class = "s2" > " MAP" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_map< / span > < span class = "p" > (),< / span >
< / span > < span id = "L-411" > < a href = "#L-411" > < span class = "linenos" > 411< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-412" > < a href = "#L-412" > < span class = "linenos" > 412< / span > < / a >
< / span > < span id = "L-413" > < a href = "#L-413" > < span class = "linenos" > 413< / span > < / a > < span class = "n" > TABLE_ALIAS_TOKENS< / 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" > TABLE_ALIAS_TOKENS< / span > < span class = "o" > -< / span > < span class = "p" > {< / span >
< / span > < span id = "L-414" > < a href = "#L-414" > < span class = "linenos" > 414< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > SEMI< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-415" > < a href = "#L-415" > < span class = "linenos" > 415< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > ANTI< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-416" > < a href = "#L-416" > < span class = "linenos" > 416< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-417" > < a href = "#L-417" > < span class = "linenos" > 417< / span > < / a >
< / span > < span id = "L-418" > < a href = "#L-418" > < span class = "linenos" > 418< / span > < / a > < span class = "n" > PLACEHOLDER_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-419" > < a href = "#L-419" > < span class = "linenos" > 419< / 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" > PLACEHOLDER_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-420" > < a href = "#L-420" > < span class = "linenos" > 420< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "p" > (< / span >
< / span > < span id = "L-421" > < a href = "#L-421" > < span class = "linenos" > 421< / span > < / a > < span class = "bp" > self< / 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" > Placeholder< / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _prev< / span > < span class = "o" > .< / span > < span class = "n" > text< / span > < span class = "p" > )< / span >
< / span > < span id = "L-422" > < a href = "#L-422" > < span class = "linenos" > 422< / span > < / a > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > NUMBER< / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match_set< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > ID_VAR_TOKENS< / span > < span class = "p" > )< / span >
< / span > < span id = "L-423" > < a href = "#L-423" > < span class = "linenos" > 423< / span > < / a > < span class = "k" > else< / span > < span class = "kc" > None< / 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 > < span id = "L-427" > < a href = "#L-427" > < span class = "linenos" > 427< / span > < / a > < span class = "n" > TYPE_CONVERTERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-428" > < a href = "#L-428" > < span class = "linenos" > 428< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/data_types/numeric< / 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" > DataType< / span > < span class = "o" > .< / span > < span class = "n" > Type< / span > < span class = "o" > .< / span > < span class = "n" > DECIMAL< / span > < span class = "p" > :< / span > < span class = "n" > build_default_decimal_type< / span > < span class = "p" > (< / span > < span class = "n" > precision< / span > < span class = "o" > =< / span > < span class = "mi" > 18< / span > < span class = "p" > ,< / span > < span class = "n" > scale< / span > < span class = "o" > =< / span > < span class = "mi" > 3< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-430" > < a href = "#L-430" > < span class = "linenos" > 430< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/data_types/text< / 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" > 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 = "k" > lambda< / span > < span class = "n" > dtype< / 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" > build< / span > < span class = "p" > (< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-432" > < a href = "#L-432" > < span class = "linenos" > 432< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-433" > < a href = "#L-433" > < span class = "linenos" > 433< / span > < / a >
< / span > < span id = "L-434" > < a href = "#L-434" > < span class = "linenos" > 434< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_table_sample< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > as_modifier< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > TableSample< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-435" > < a href = "#L-435" > < span class = "linenos" > 435< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/samples.html< / span >
< / span > < span id = "L-436" > < a href = "#L-436" > < span class = "linenos" > 436< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _parse_table_sample< / span > < span class = "p" > (< / span > < span class = "n" > as_modifier< / span > < span class = "o" > =< / span > < span class = "n" > as_modifier< / span > < span class = "p" > )< / span >
< / span > < span id = "L-437" > < a href = "#L-437" > < span class = "linenos" > 437< / span > < / a > < span class = "k" > if< / span > < span class = "n" > sample< / span > < span class = "ow" > and< / span > < span class = "ow" > not< / span > < span class = "n" > sample< / 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" > " method" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-438" > < a href = "#L-438" > < span class = "linenos" > 438< / span > < / a > < span class = "k" > if< / span > < span class = "n" > sample< / 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" > " size" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-439" > < a href = "#L-439" > < span class = "linenos" > 439< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-440" > < a href = "#L-440" > < span class = "linenos" > 440< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "L-441" > < a href = "#L-441" > < span class = "linenos" > 441< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " SYSTEM" < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-442" > < a href = "#L-442" > < span class = "linenos" > 442< / span > < / a >
< / span > < span id = "L-443" > < a href = "#L-443" > < span class = "linenos" > 443< / span > < / a > < span class = "k" > return< / span > < span class = "n" > sample< / span >
< / span > < span id = "L-444" > < a href = "#L-444" > < span class = "linenos" > 444< / span > < / a >
< / span > < span id = "L-445" > < a href = "#L-445" > < span class = "linenos" > 445< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_bracket< / span > < span class = "p" > (< / span >
< / span > < span id = "L-446" > < a href = "#L-446" > < span class = "linenos" > 446< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > this< / 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" > Expression< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "L-447" > < a href = "#L-447" > < span class = "linenos" > 447< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-448" > < a href = "#L-448" > < span class = "linenos" > 448< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _parse_bracket< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "L-449" > < a href = "#L-449" > < span class = "linenos" > 449< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > bracket< / 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-450" > < a href = "#L-450" > < span class = "linenos" > 450< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " returns_list_for_maps" < / span > < span class = "p" > ,< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span >
< / span > < span id = "L-451" > < a href = "#L-451" > < span class = "linenos" > 451< / span > < / a >
< / span > < span id = "L-452" > < a href = "#L-452" > < span class = "linenos" > 452< / span > < / a > < span class = "k" > return< / span > < span class = "n" > bracket< / span >
< / span > < span id = "L-453" > < a href = "#L-453" > < span class = "linenos" > 453< / span > < / a >
< / span > < span id = "L-454" > < a href = "#L-454" > < span class = "linenos" > 454< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_map< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ToMap< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Map< / span > < span class = "p" > :< / span >
< / span > < span id = "L-455" > < a href = "#L-455" > < span class = "linenos" > 455< / span > < / a > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > L_BRACE< / span > < span class = "p" > ,< / span > < span class = "n" > advance< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-456" > < a href = "#L-456" > < span class = "linenos" > 456< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / 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" > ToMap< / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_bracket< / span > < span class = "p" > ())< / span >
< / span > < span id = "L-457" > < a href = "#L-457" > < span class = "linenos" > 457< / span > < / a >
< / span > < span id = "L-458" > < a href = "#L-458" > < span class = "linenos" > 458< / span > < / a > < span class = "n" > args< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_wrapped_csv< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_assignment< / span > < span class = "p" > )< / span >
< / span > < span id = "L-459" > < a href = "#L-459" > < span class = "linenos" > 459< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / 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" > Map< / span > < span class = "p" > ,< / span > < span class = "n" > keys< / 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" > values< / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-460" > < a href = "#L-460" > < span class = "linenos" > 460< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-461" > < a href = "#L-461" > < span class = "linenos" > 461< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_struct_types< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > type_required< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "L-462" > < a href = "#L-462" > < span class = "linenos" > 462< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_field_def< / span > < span class = "p" > ()< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-463" > < a href = "#L-463" > < span class = "linenos" > 463< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-464" > < a href = "#L-464" > < span class = "linenos" > 464< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _pivot_column_names< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > aggregations< / 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 = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < 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-465" > < a href = "#L-465" > < span class = "linenos" > 465< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "L-466" > < a href = "#L-466" > < span class = "linenos" > 466< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _pivot_column_names< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > )< / span >
< / span > < span id = "L-467" > < a href = "#L-467" > < span class = "linenos" > 467< / span > < / a > < span class = "k" > return< / span > < span class = "n" > pivot_column_names< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > ,< / span > < span class = "n" > dialect< / span > < span class = "o" > =< / span > < span class = "s2" > " duckdb" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-468" > < a href = "#L-468" > < span class = "linenos" > 468< / span > < / a >
< / span > < span id = "L-469" > < a href = "#L-469" > < span class = "linenos" > 469< / 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-470" > < a href = "#L-470" > < span class = "linenos" > 470< / span > < / a > < span class = "n" > PARAMETER_TOKEN< / span > < span class = "o" > =< / span > < span class = "s2" > " $" < / span >
< / span > < span id = "L-471" > < a href = "#L-471" > < span class = "linenos" > 471< / span > < / a > < span class = "n" > NAMED_PLACEHOLDER_TOKEN< / span > < span class = "o" > =< / span > < span class = "s2" > " $" < / span >
< / span > < span id = "L-472" > < a href = "#L-472" > < span class = "linenos" > 472< / span > < / a > < span class = "n" > JOIN_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-473" > < a href = "#L-473" > < span class = "linenos" > 473< / span > < / a > < span class = "n" > TABLE_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-474" > < a href = "#L-474" > < span class = "linenos" > 474< / span > < / a > < span class = "n" > QUERY_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-475" > < a href = "#L-475" > < span class = "linenos" > 475< / span > < / a > < span class = "n" > LIMIT_FETCH< / span > < span class = "o" > =< / span > < span class = "s2" > " LIMIT" < / span >
< / span > < span id = "L-476" > < a href = "#L-476" > < span class = "linenos" > 476< / 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-477" > < a href = "#L-477" > < span class = "linenos" > 477< / span > < / a > < span class = "n" > RENAME_TABLE_WITH_DB< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-478" > < a href = "#L-478" > < span class = "linenos" > 478< / span > < / a > < span class = "n" > NVL2_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-479" > < a href = "#L-479" > < span class = "linenos" > 479< / span > < / a > < span class = "n" > SEMI_ANTI_JOIN_WITH_SIDE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-480" > < a href = "#L-480" > < span class = "linenos" > 480< / span > < / a > < span class = "n" > TABLESAMPLE_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "s2" > " USING SAMPLE" < / span >
< / span > < span id = "L-481" > < a href = "#L-481" > < span class = "linenos" > 481< / span > < / a > < span class = "n" > TABLESAMPLE_SEED_KEYWORD< / span > < span class = "o" > =< / span > < span class = "s2" > " REPEATABLE" < / span >
< / span > < span id = "L-482" > < a href = "#L-482" > < span class = "linenos" > 482< / span > < / a > < span class = "n" > LAST_DAY_SUPPORTS_DATE_PART< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-483" > < a href = "#L-483" > < span class = "linenos" > 483< / span > < / a > < span class = "n" > JSON_KEY_VALUE_PAIR_SEP< / span > < span class = "o" > =< / span > < span class = "s2" > " ," < / span >
< / span > < span id = "L-484" > < a href = "#L-484" > < span class = "linenos" > 484< / span > < / a > < span class = "n" > IGNORE_NULLS_IN_FUNC< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-485" > < a href = "#L-485" > < span class = "linenos" > 485< / span > < / a > < span class = "n" > JSON_PATH_BRACKETED_KEY_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-486" > < a href = "#L-486" > < span class = "linenos" > 486< / span > < / a > < span class = "n" > SUPPORTS_CREATE_TABLE_LIKE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-487" > < a href = "#L-487" > < span class = "linenos" > 487< / span > < / a > < span class = "n" > MULTI_ARG_DISTINCT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-488" > < a href = "#L-488" > < span class = "linenos" > 488< / span > < / a > < span class = "n" > CAN_IMPLEMENT_ARRAY_ANY< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-489" > < a href = "#L-489" > < span class = "linenos" > 489< / span > < / a > < span class = "n" > SUPPORTS_TO_NUMBER< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-490" > < a href = "#L-490" > < span class = "linenos" > 490< / span > < / a > < span class = "n" > COPY_HAS_INTO_KEYWORD< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-491" > < a href = "#L-491" > < span class = "linenos" > 491< / span > < / a > < span class = "n" > STAR_EXCEPT< / span > < span class = "o" > =< / span > < span class = "s2" > " EXCLUDE" < / span >
< / span > < span id = "L-492" > < a href = "#L-492" > < span class = "linenos" > 492< / span > < / a > < span class = "n" > PAD_FILL_PATTERN_IS_REQUIRED< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "L-493" > < a href = "#L-493" > < span class = "linenos" > 493< / span > < / a > < span class = "n" > ARRAY_CONCAT_IS_VAR_LEN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "L-494" > < a href = "#L-494" > < span class = "linenos" > 494< / span > < / a >
< / span > < span id = "L-495" > < a href = "#L-495" > < span class = "linenos" > 495< / span > < / a > < span class = "n" > TRANSFORMS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-496" > < a href = "#L-496" > < span class = "linenos" > 496< / 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-497" > < a href = "#L-497" > < span class = "linenos" > 497< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxDistinct< / span > < span class = "p" > :< / span > < span class = "n" > approx_count_distinct_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-498" > < a href = "#L-498" > < span class = "linenos" > 498< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Array< / span > < span class = "p" > :< / span > < span class = "n" > inline_array_unless_query< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-499" > < a href = "#L-499" > < span class = "linenos" > 499< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayFilter< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_FILTER" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-500" > < a href = "#L-500" > < span class = "linenos" > 500< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySize< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_LENGTH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-501" > < a href = "#L-501" > < span class = "linenos" > 501< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMax< / span > < span class = "p" > :< / span > < span class = "n" > arg_max_or_min_no_count< / span > < span class = "p" > (< / span > < span class = "s2" > " ARG_MAX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-502" > < a href = "#L-502" > < span class = "linenos" > 502< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMin< / span > < span class = "p" > :< / span > < span class = "n" > arg_max_or_min_no_count< / span > < span class = "p" > (< / span > < span class = "s2" > " ARG_MIN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-503" > < a href = "#L-503" > < span class = "linenos" > 503< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySort< / span > < span class = "p" > :< / span > < span class = "n" > _array_sort_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-504" > < a href = "#L-504" > < span class = "linenos" > 504< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySum< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_SUM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-505" > < a href = "#L-505" > < span class = "linenos" > 505< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " XOR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-506" > < a href = "#L-506" > < span class = "linenos" > 506< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CommentColumnConstraint< / span > < span class = "p" > :< / span > < span class = "n" > no_comment_column_constraint_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-507" > < a href = "#L-507" > < span class = "linenos" > 507< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentDate< / 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_DATE" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-508" > < a href = "#L-508" > < span class = "linenos" > 508< / 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-509" > < a href = "#L-509" > < span class = "linenos" > 509< / 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-510" > < a href = "#L-510" > < span class = "linenos" > 510< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfMonth< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFMONTH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-511" > < a href = "#L-511" > < span class = "linenos" > 511< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeek< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFWEEK" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-512" > < a href = "#L-512" > < span class = "linenos" > 512< / 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" > " ISODOW" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-513" > < a href = "#L-513" > < span class = "linenos" > 513< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfYear< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFYEAR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-514" > < a href = "#L-514" > < span class = "linenos" > 514< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "p" > :< / span > < span class = "n" > _datatype_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-515" > < a href = "#L-515" > < span class = "linenos" > 515< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Date< / span > < span class = "p" > :< / span > < span class = "n" > _date_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-516" > < a href = "#L-516" > < span class = "linenos" > 516< / 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 > < span id = "L-517" > < a href = "#L-517" > < span class = "linenos" > 517< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateFromParts< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_DATE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-518" > < a href = "#L-518" > < span class = "linenos" > 518< / 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 > < span id = "L-519" > < a href = "#L-519" > < span class = "linenos" > 519< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > :< / span > < span class = "n" > _date_diff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-520" > < a href = "#L-520" > < span class = "linenos" > 520< / 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-521" > < a href = "#L-521" > < span class = "linenos" > 521< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Datetime< / span > < span class = "p" > :< / span > < span class = "n" > no_datetime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-522" > < a href = "#L-522" > < span class = "linenos" > 522< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeSub< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-523" > < a href = "#L-523" > < span class = "linenos" > 523< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-524" > < a href = "#L-524" > < span class = "linenos" > 524< / 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-525" > < a href = "#L-525" > < span class = "linenos" > 525< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(STRFTIME(< / 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" > DuckDB< / 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-526" > < a href = "#L-526" > < span class = "linenos" > 526< / 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" > " DECODE" < / span > < span class = "p" > ,< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-527" > < a href = "#L-527" > < span class = "linenos" > 527< / 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-528" > < a href = "#L-528" > < span class = "linenos" > 528< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(STRPTIME(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 TEXT), < / span > < span class = "si" > {< / span > < span class = "n" > DuckDB< / 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-529" > < a href = "#L-529" > < span class = "linenos" > 529< / 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" > " ENCODE" < / span > < span class = "p" > ,< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-530" > < a href = "#L-530" > < span class = "linenos" > 530< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateDateArray< / span > < span class = "p" > :< / span > < span class = "n" > _generate_datetime_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-531" > < a href = "#L-531" > < span class = "linenos" > 531< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateTimestampArray< / span > < span class = "p" > :< / span > < span class = "n" > _generate_datetime_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-532" > < a href = "#L-532" > < span class = "linenos" > 532< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Explode< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " UNNEST" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-533" > < a href = "#L-533" > < span class = "linenos" > 533< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IntDiv< / 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" > binary< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " //" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-534" > < a href = "#L-534" > < span class = "linenos" > 534< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IsInf< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ISINF" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-535" > < a href = "#L-535" > < span class = "linenos" > 535< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IsNan< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ISNAN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-536" > < a href = "#L-536" > < span class = "linenos" > 536< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONBExists< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " JSON_EXISTS" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-537" > < a href = "#L-537" > < span class = "linenos" > 537< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > :< / span > < span class = "n" > _arrow_json_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-538" > < a href = "#L-538" > < span class = "linenos" > 538< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtractScalar< / span > < span class = "p" > :< / span > < span class = "n" > _arrow_json_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-539" > < a href = "#L-539" > < span class = "linenos" > 539< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONFormat< / span > < span class = "p" > :< / span > < span class = "n" > _json_format_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-540" > < a href = "#L-540" > < span class = "linenos" > 540< / 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-541" > < a href = "#L-541" > < span class = "linenos" > 541< / 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-542" > < a href = "#L-542" > < span class = "linenos" > 542< / 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-543" > < a href = "#L-543" > < span class = "linenos" > 543< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / 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" > " UNHEX" < / 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 = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )),< / span >
< / span > < span id = "L-544" > < a href = "#L-544" > < span class = "linenos" > 544< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MonthsBetween< / 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-545" > < a href = "#L-545" > < span class = "linenos" > 545< / span > < / a > < span class = "s2" > " DATEDIFF" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-546" > < a href = "#L-546" > < span class = "linenos" > 546< / span > < / a > < span class = "s2" > " ' month' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-547" > < a href = "#L-547" > < span class = "linenos" > 547< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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" > copy< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-548" > < a href = "#L-548" > < span class = "linenos" > 548< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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" > copy< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "L-549" > < a href = "#L-549" > < span class = "linenos" > 549< / span > < / a > < 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" > PercentileCont< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " QUANTILE_CONT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-551" > < a href = "#L-551" > < span class = "linenos" > 551< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileDisc< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " QUANTILE_DISC" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-552" > < a href = "#L-552" > < span class = "linenos" > 552< / span > < / a > < span class = "c1" > # DuckDB doesn' t allow qualified columns inside of PIVOT expressions.< / span >
< / span > < span id = "L-553" > < a href = "#L-553" > < span class = "linenos" > 553< / span > < / a > < span class = "c1" > # See: https://github.com/duckdb/duckdb/blob/671faf92411182f81dce42ac43de8bfb05d9909e/src/planner/binder/tableref/bind_pivot.cpp#L61-L62< / span >
< / span > < span id = "L-554" > < a href = "#L-554" > < span class = "linenos" > 554< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pivot< / 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" > unqualify_columns< / span > < span class = "p" > ]),< / span >
< / span > < span id = "L-555" > < a href = "#L-555" > < span class = "linenos" > 555< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpReplace< / 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-556" > < a href = "#L-556" > < span class = "linenos" > 556< / span > < / a > < span class = "s2" > " REGEXP_REPLACE" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-557" > < a href = "#L-557" > < span class = "linenos" > 557< / span > < / a > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-558" > < a href = "#L-558" > < span class = "linenos" > 558< / span > < / a > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-559" > < a href = "#L-559" > < span class = "linenos" > 559< / span > < / a > < span class = "n" > e< / 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" > " replacement" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-560" > < a href = "#L-560" > < span class = "linenos" > 560< / span > < / a > < span class = "n" > e< / 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" > " modifiers" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-561" > < a href = "#L-561" > < span class = "linenos" > 561< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-562" > < a href = "#L-562" > < span class = "linenos" > 562< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " REGEXP_MATCHES" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-563" > < a href = "#L-563" > < span class = "linenos" > 563< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " STR_SPLIT_REGEX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-564" > < a href = "#L-564" > < span class = "linenos" > 564< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Return< / 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" > sql< / 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-565" > < a href = "#L-565" > < span class = "linenos" > 565< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ReturnsProperty< / 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 = "s2" > " TABLE" < / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > )< / span > < span class = "k" > else< / span > < span class = "s2" > " " < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-566" > < a href = "#L-566" > < span class = "linenos" > 566< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Rand< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " RANDOM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-567" > < a href = "#L-567" > < span class = "linenos" > 567< / 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-568" > < a href = "#L-568" > < span class = "linenos" > 568< / 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-569" > < a href = "#L-569" > < span class = "linenos" > 569< / 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-570" > < a href = "#L-570" > < span class = "linenos" > 570< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " STR_SPLIT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-571" > < a href = "#L-571" > < span class = "linenos" > 571< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "p" > :< / span > < span class = "n" > _sort_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-572" > < a href = "#L-572" > < span class = "linenos" > 572< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > :< / span > < span class = "n" > str_position_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-573" > < a href = "#L-573" > < span class = "linenos" > 573< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToUnix< / 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-574" > < a href = "#L-574" > < span class = "linenos" > 574< / span > < / a > < span class = "s2" > " EPOCH" < / 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" > " STRPTIME" < / 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-575" > < a href = "#L-575" > < span class = "linenos" > 575< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-576" > < a href = "#L-576" > < span class = "linenos" > 576< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "p" > :< / span > < span class = "n" > _struct_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-577" > < a href = "#L-577" > < span class = "linenos" > 577< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Transform< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_TRANSFORM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-578" > < a href = "#L-578" > < span class = "linenos" > 578< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-579" > < a href = "#L-579" > < span class = "linenos" > 579< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Time< / span > < span class = "p" > :< / span > < span class = "n" > no_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-580" > < a href = "#L-580" > < span class = "linenos" > 580< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeDiff< / span > < span class = "p" > :< / span > < span class = "n" > _timediff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-581" > < a href = "#L-581" > < span class = "linenos" > 581< / 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-582" > < a href = "#L-582" > < span class = "linenos" > 582< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampDiff< / 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-583" > < a href = "#L-583" > < span class = "linenos" > 583< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / 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 = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > unit< / 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-584" > < a href = "#L-584" > < span class = "linenos" > 584< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-585" > < a href = "#L-585" > < span class = "linenos" > 585< / 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-586" > < a href = "#L-586" > < span class = "linenos" > 586< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToDate< / 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" > 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" > e< / 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" > DATE< / span > < span class = "p" > )),< / span >
< / span > < span id = "L-587" > < a href = "#L-587" > < span class = "linenos" > 587< / 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-588" > < a href = "#L-588" > < span class = "linenos" > 588< / 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-589" > < a href = "#L-589" > < span class = "linenos" > 589< / span > < / a > < span class = "s2" > " EPOCH" < / 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" > e< / 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-590" > < a href = "#L-590" > < span class = "linenos" > 590< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-591" > < a href = "#L-591" > < span class = "linenos" > 591< / 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" > " STRFTIME" < / 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-592" > < a href = "#L-592" > < span class = "linenos" > 592< / 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" > " EPOCH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-593" > < a href = "#L-593" > < span class = "linenos" > 593< / 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-594" > < a href = "#L-594" > < span class = "linenos" > 594< / 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 TEXT), ' -' , ' ' ), 1, 8) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-595" > < a href = "#L-595" > < span class = "linenos" > 595< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-596" > < a href = "#L-596" > < span class = "linenos" > 596< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsDiff< / 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-597" > < a href = "#L-597" > < span class = "linenos" > 597< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-598" > < a href = "#L-598" > < span class = "linenos" > 598< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " ' < / span > < span class = "si" > {< / span > < span class = "n" > e< / 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 = "s1" > ' unit' < / span > < span class = "p" > )< / span > < span class = "w" > < / span > < span class = "ow" > or< / span > < span class = "w" > < / span > < span class = "s1" > ' DAY' < / span > < span class = "si" > }< / span > < span class = "s2" > ' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-599" > < a href = "#L-599" > < span class = "linenos" > 599< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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-600" > < a href = "#L-600" > < span class = "linenos" > 600< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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-601" > < a href = "#L-601" > < span class = "linenos" > 601< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "L-602" > < a href = "#L-602" > < span class = "linenos" > 602< / 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 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-603" > < a href = "#L-603" > < span class = "linenos" > 603< / span > < / a > < span class = "s2" > " STRFTIME" < / 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_TIMESTAMP" < / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-604" > < a href = "#L-604" > < span class = "linenos" > 604< / span > < / a > < span class = "p" > ),< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-605" > < a href = "#L-605" > < span class = "linenos" > 605< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeTrunc< / 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-606" > < a href = "#L-606" > < span class = "linenos" > 606< / span > < / a > < span class = "s2" > " DATE_TRUNC" < / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-607" > < a href = "#L-607" > < span class = "linenos" > 607< / span > < / a > < span class = "p" > ),< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-608" > < a href = "#L-608" > < span class = "linenos" > 608< / 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-609" > < a href = "#L-609" > < span class = "linenos" > 609< / 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 class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(TO_TIMESTAMP(< / 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 TEXT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-610" > < a href = "#L-610" > < span class = "linenos" > 610< / 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-611" > < a href = "#L-611" > < span class = "linenos" > 611< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > WeekOfYear< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " WEEKOFYEAR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "L-612" > < a href = "#L-612" > < span class = "linenos" > 612< / 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-613" > < a href = "#L-613" > < span class = "linenos" > 613< / span > < / a > < 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 = "n" > SUPPORTED_JSON_PATH_PARTS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-616" > < a href = "#L-616" > < span class = "linenos" > 616< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathKey< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-617" > < a href = "#L-617" > < span class = "linenos" > 617< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathRoot< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-618" > < a href = "#L-618" > < span class = "linenos" > 618< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathSubscript< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-619" > < a href = "#L-619" > < span class = "linenos" > 619< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathWildcard< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-620" > < a href = "#L-620" > < span class = "linenos" > 620< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-621" > < a href = "#L-621" > < span class = "linenos" > 621< / span > < / a >
< / span > < span id = "L-622" > < a href = "#L-622" > < span class = "linenos" > 622< / span > < / a > < span class = "n" > TYPE_MAPPING< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-623" > < a href = "#L-623" > < span class = "linenos" > 623< / 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-624" > < a href = "#L-624" > < span class = "linenos" > 624< / 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" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-625" > < a href = "#L-625" > < span class = "linenos" > 625< / 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" > BPCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-626" > < a href = "#L-626" > < span class = "linenos" > 626< / 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" > CHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-627" > < a href = "#L-627" > < span class = "linenos" > 627< / 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-628" > < a href = "#L-628" > < span class = "linenos" > 628< / 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" > NCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-629" > < a href = "#L-629" > < span class = "linenos" > 629< / 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" > NVARCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-630" > < a href = "#L-630" > < span class = "linenos" > 630< / 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" > UINT< / span > < span class = "p" > :< / span > < span class = "s2" > " UINTEGER" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-631" > < a href = "#L-631" > < span class = "linenos" > 631< / 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" > VARBINARY< / span > < span class = "p" > :< / span > < span class = "s2" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-632" > < a href = "#L-632" > < span class = "linenos" > 632< / 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" > ROWVERSION< / span > < span class = "p" > :< / span > < span class = "s2" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-633" > < a href = "#L-633" > < span class = "linenos" > 633< / 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" > VARCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-634" > < a href = "#L-634" > < span class = "linenos" > 634< / 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-635" > < a href = "#L-635" > < span class = "linenos" > 635< / 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" > TIMESTAMP_S< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_S" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-636" > < a href = "#L-636" > < span class = "linenos" > 636< / 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" > TIMESTAMP_MS< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_MS" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-637" > < a href = "#L-637" > < span class = "linenos" > 637< / 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" > TIMESTAMP_NS< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_NS" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-638" > < a href = "#L-638" > < span class = "linenos" > 638< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-639" > < a href = "#L-639" > < span class = "linenos" > 639< / span > < / a >
< / span > < span id = "L-640" > < a href = "#L-640" > < span class = "linenos" > 640< / span > < / a > < span class = "c1" > # https://github.com/duckdb/duckdb/blob/ff7f24fd8e3128d94371827523dae85ebaf58713/third_party/libpg_query/grammar/keywords/reserved_keywords.list#L1-L77< / span >
< / span > < span id = "L-641" > < a href = "#L-641" > < span class = "linenos" > 641< / span > < / a > < span class = "n" > RESERVED_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-642" > < a href = "#L-642" > < span class = "linenos" > 642< / span > < / a > < span class = "s2" > " array" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-643" > < a href = "#L-643" > < span class = "linenos" > 643< / span > < / a > < span class = "s2" > " analyse" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-644" > < a href = "#L-644" > < span class = "linenos" > 644< / span > < / a > < span class = "s2" > " union" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-645" > < a href = "#L-645" > < span class = "linenos" > 645< / span > < / a > < span class = "s2" > " all" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-646" > < a href = "#L-646" > < span class = "linenos" > 646< / span > < / a > < span class = "s2" > " when" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-647" > < a href = "#L-647" > < span class = "linenos" > 647< / span > < / a > < span class = "s2" > " in_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-648" > < a href = "#L-648" > < span class = "linenos" > 648< / span > < / a > < span class = "s2" > " default" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-649" > < a href = "#L-649" > < span class = "linenos" > 649< / span > < / a > < span class = "s2" > " create_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-650" > < a href = "#L-650" > < span class = "linenos" > 650< / span > < / a > < span class = "s2" > " window" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-651" > < a href = "#L-651" > < span class = "linenos" > 651< / span > < / a > < span class = "s2" > " asymmetric" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-652" > < a href = "#L-652" > < span class = "linenos" > 652< / span > < / a > < span class = "s2" > " to" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-653" > < a href = "#L-653" > < span class = "linenos" > 653< / span > < / a > < span class = "s2" > " else" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-654" > < a href = "#L-654" > < span class = "linenos" > 654< / span > < / a > < span class = "s2" > " localtime" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-655" > < a href = "#L-655" > < span class = "linenos" > 655< / span > < / a > < span class = "s2" > " from" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-656" > < a href = "#L-656" > < span class = "linenos" > 656< / span > < / a > < span class = "s2" > " end_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-657" > < a href = "#L-657" > < span class = "linenos" > 657< / span > < / a > < span class = "s2" > " select" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-658" > < a href = "#L-658" > < span class = "linenos" > 658< / span > < / a > < span class = "s2" > " current_date" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-659" > < a href = "#L-659" > < span class = "linenos" > 659< / span > < / a > < span class = "s2" > " foreign" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-660" > < a href = "#L-660" > < span class = "linenos" > 660< / span > < / a > < span class = "s2" > " with" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-661" > < a href = "#L-661" > < span class = "linenos" > 661< / span > < / a > < span class = "s2" > " grant" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-662" > < a href = "#L-662" > < span class = "linenos" > 662< / span > < / a > < span class = "s2" > " session_user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-663" > < a href = "#L-663" > < span class = "linenos" > 663< / span > < / a > < span class = "s2" > " or" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-664" > < a href = "#L-664" > < span class = "linenos" > 664< / span > < / a > < span class = "s2" > " except" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-665" > < a href = "#L-665" > < span class = "linenos" > 665< / span > < / a > < span class = "s2" > " references" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-666" > < a href = "#L-666" > < span class = "linenos" > 666< / span > < / a > < span class = "s2" > " fetch" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-667" > < a href = "#L-667" > < span class = "linenos" > 667< / span > < / a > < span class = "s2" > " limit" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-668" > < a href = "#L-668" > < span class = "linenos" > 668< / span > < / a > < span class = "s2" > " group_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-669" > < a href = "#L-669" > < span class = "linenos" > 669< / span > < / a > < span class = "s2" > " leading" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-670" > < a href = "#L-670" > < span class = "linenos" > 670< / span > < / a > < span class = "s2" > " into" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-671" > < a href = "#L-671" > < span class = "linenos" > 671< / span > < / a > < span class = "s2" > " collate" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-672" > < a href = "#L-672" > < span class = "linenos" > 672< / span > < / a > < span class = "s2" > " offset" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-673" > < a href = "#L-673" > < span class = "linenos" > 673< / span > < / a > < span class = "s2" > " do" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-674" > < a href = "#L-674" > < span class = "linenos" > 674< / span > < / a > < span class = "s2" > " then" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-675" > < a href = "#L-675" > < span class = "linenos" > 675< / span > < / a > < span class = "s2" > " localtimestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-676" > < a href = "#L-676" > < span class = "linenos" > 676< / span > < / a > < span class = "s2" > " check_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-677" > < a href = "#L-677" > < span class = "linenos" > 677< / span > < / a > < span class = "s2" > " lateral_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-678" > < a href = "#L-678" > < span class = "linenos" > 678< / span > < / a > < span class = "s2" > " current_role" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-679" > < a href = "#L-679" > < span class = "linenos" > 679< / span > < / a > < span class = "s2" > " where" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-680" > < a href = "#L-680" > < span class = "linenos" > 680< / span > < / a > < span class = "s2" > " asc_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-681" > < a href = "#L-681" > < span class = "linenos" > 681< / span > < / a > < span class = "s2" > " placing" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-682" > < a href = "#L-682" > < span class = "linenos" > 682< / span > < / a > < span class = "s2" > " desc_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-683" > < a href = "#L-683" > < span class = "linenos" > 683< / span > < / a > < span class = "s2" > " user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-684" > < a href = "#L-684" > < span class = "linenos" > 684< / span > < / a > < span class = "s2" > " unique" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-685" > < a href = "#L-685" > < span class = "linenos" > 685< / span > < / a > < span class = "s2" > " initially" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-686" > < a href = "#L-686" > < span class = "linenos" > 686< / span > < / a > < span class = "s2" > " column" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-687" > < a href = "#L-687" > < span class = "linenos" > 687< / span > < / a > < span class = "s2" > " both" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-688" > < a href = "#L-688" > < span class = "linenos" > 688< / span > < / a > < span class = "s2" > " some" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-689" > < a href = "#L-689" > < span class = "linenos" > 689< / span > < / a > < span class = "s2" > " as" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-690" > < a href = "#L-690" > < span class = "linenos" > 690< / span > < / a > < span class = "s2" > " any" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-691" > < a href = "#L-691" > < span class = "linenos" > 691< / span > < / a > < span class = "s2" > " only" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-692" > < a href = "#L-692" > < span class = "linenos" > 692< / span > < / a > < span class = "s2" > " deferrable" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-693" > < a href = "#L-693" > < span class = "linenos" > 693< / span > < / a > < span class = "s2" > " null_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-694" > < a href = "#L-694" > < span class = "linenos" > 694< / span > < / a > < span class = "s2" > " current_time" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-695" > < a href = "#L-695" > < span class = "linenos" > 695< / span > < / a > < span class = "s2" > " true_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-696" > < a href = "#L-696" > < span class = "linenos" > 696< / span > < / a > < span class = "s2" > " table" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-697" > < a href = "#L-697" > < span class = "linenos" > 697< / span > < / a > < span class = "s2" > " case" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-698" > < a href = "#L-698" > < span class = "linenos" > 698< / span > < / a > < span class = "s2" > " trailing" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-699" > < a href = "#L-699" > < span class = "linenos" > 699< / span > < / a > < span class = "s2" > " variadic" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-700" > < a href = "#L-700" > < span class = "linenos" > 700< / span > < / a > < span class = "s2" > " for" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-701" > < a href = "#L-701" > < span class = "linenos" > 701< / span > < / a > < span class = "s2" > " on" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-702" > < a href = "#L-702" > < span class = "linenos" > 702< / span > < / a > < span class = "s2" > " distinct" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-703" > < a href = "#L-703" > < span class = "linenos" > 703< / span > < / a > < span class = "s2" > " false_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-704" > < a href = "#L-704" > < span class = "linenos" > 704< / span > < / a > < span class = "s2" > " not" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-705" > < a href = "#L-705" > < span class = "linenos" > 705< / span > < / a > < span class = "s2" > " constraint" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-706" > < a href = "#L-706" > < span class = "linenos" > 706< / span > < / a > < span class = "s2" > " current_timestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-707" > < a href = "#L-707" > < span class = "linenos" > 707< / span > < / a > < span class = "s2" > " returning" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-708" > < a href = "#L-708" > < span class = "linenos" > 708< / span > < / a > < span class = "s2" > " primary" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-709" > < a href = "#L-709" > < span class = "linenos" > 709< / span > < / a > < span class = "s2" > " intersect" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-710" > < a href = "#L-710" > < span class = "linenos" > 710< / span > < / a > < span class = "s2" > " having" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-711" > < a href = "#L-711" > < span class = "linenos" > 711< / span > < / a > < span class = "s2" > " analyze" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-712" > < a href = "#L-712" > < span class = "linenos" > 712< / span > < / a > < span class = "s2" > " current_user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-713" > < a href = "#L-713" > < span class = "linenos" > 713< / span > < / a > < span class = "s2" > " and" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-714" > < a href = "#L-714" > < span class = "linenos" > 714< / span > < / a > < span class = "s2" > " cast" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-715" > < a href = "#L-715" > < span class = "linenos" > 715< / span > < / a > < span class = "s2" > " symmetric" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-716" > < a href = "#L-716" > < span class = "linenos" > 716< / span > < / a > < span class = "s2" > " using" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-717" > < a href = "#L-717" > < span class = "linenos" > 717< / span > < / a > < span class = "s2" > " order" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-718" > < a href = "#L-718" > < span class = "linenos" > 718< / span > < / a > < span class = "s2" > " current_catalog" < / span > < span class = "p" > ,< / span >
< / span > < span id = "L-719" > < a href = "#L-719" > < span class = "linenos" > 719< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-720" > < a href = "#L-720" > < span class = "linenos" > 720< / span > < / a >
< / span > < span id = "L-721" > < a href = "#L-721" > < span class = "linenos" > 721< / span > < / a > < span class = "n" > UNWRAPPED_INTERVAL_VALUES< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Paren< / span > < span class = "p" > )< / span >
< / span > < span id = "L-722" > < a href = "#L-722" > < span class = "linenos" > 722< / span > < / a >
< / span > < span id = "L-723" > < a href = "#L-723" > < span class = "linenos" > 723< / span > < / a > < span class = "c1" > # DuckDB doesn' t generally support CREATE TABLE .. properties< / span >
< / span > < span id = "L-724" > < a href = "#L-724" > < span class = "linenos" > 724< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/statements/create_table.html< / span >
< / span > < span id = "L-725" > < a href = "#L-725" > < span class = "linenos" > 725< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "L-726" > < a href = "#L-726" > < span class = "linenos" > 726< / span > < / a > < span class = "n" > prop< / 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 > < span id = "L-727" > < a href = "#L-727" > < span class = "linenos" > 727< / span > < / a > < span class = "k" > for< / span > < span class = "n" > prop< / span > < span class = "ow" > in< / 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 > < span id = "L-728" > < a href = "#L-728" > < span class = "linenos" > 728< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "L-729" > < a href = "#L-729" > < span class = "linenos" > 729< / span > < / a >
< / span > < span id = "L-730" > < a href = "#L-730" > < span class = "linenos" > 730< / span > < / a > < span class = "c1" > # There are a few exceptions (e.g. temporary tables) which are supported or< / span >
< / span > < span id = "L-731" > < a href = "#L-731" > < span class = "linenos" > 731< / span > < / a > < span class = "c1" > # can be transpiled to DuckDB, so we explicitly override them accordingly< / span >
< / span > < span id = "L-732" > < a href = "#L-732" > < span class = "linenos" > 732< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LikeProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_SCHEMA< / span >
< / span > < span id = "L-733" > < a href = "#L-733" > < span class = "linenos" > 733< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TemporaryProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_CREATE< / span >
< / span > < span id = "L-734" > < a href = "#L-734" > < span class = "linenos" > 734< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ReturnsProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_ALIAS< / span >
< / span > < span id = "L-735" > < a href = "#L-735" > < span class = "linenos" > 735< / span > < / a >
< / span > < span id = "L-736" > < a href = "#L-736" > < span class = "linenos" > 736< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > fromiso8601timestamp_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" > FromISO8601Timestamp< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-737" > < a href = "#L-737" > < span class = "linenos" > 737< / 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" > 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" > TIMESTAMPTZ< / span > < span class = "p" > ))< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-738" > < a href = "#L-738" > < span class = "linenos" > 738< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-739" > < a href = "#L-739" > < span class = "linenos" > 739< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtotime_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" > StrToTime< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-740" > < a href = "#L-740" > < span class = "linenos" > 740< / 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-741" > < a href = "#L-741" > < span class = "linenos" > 741< / span > < / a > < span class = "n" > formatted_time< / 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-742" > < a href = "#L-742" > < span class = "linenos" > 742< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS TIMESTAMP)" < / span >
< / span > < span id = "L-743" > < a href = "#L-743" > < span class = "linenos" > 743< / span > < / a > < span class = "k" > return< / 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 > < span id = "L-744" > < a href = "#L-744" > < span class = "linenos" > 744< / span > < / a >
< / span > < span id = "L-745" > < a href = "#L-745" > < span class = "linenos" > 745< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtodate_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" > StrToDate< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-746" > < a href = "#L-746" > < span class = "linenos" > 746< / 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-747" > < a href = "#L-747" > < span class = "linenos" > 747< / span > < / a > < span class = "n" > formatted_time< / 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-748" > < a href = "#L-748" > < span class = "linenos" > 748< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
< / span > < span id = "L-749" > < a href = "#L-749" > < span class = "linenos" > 749< / span > < / a > < span class = "k" > return< / 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" > expression< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
< / span > < span id = "L-750" > < a href = "#L-750" > < span class = "linenos" > 750< / span > < / a >
< / span > < span id = "L-751" > < a href = "#L-751" > < span class = "linenos" > 751< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > parsejson_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" > ParseJSON< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-752" > < a href = "#L-752" > < span class = "linenos" > 752< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-753" > < a href = "#L-753" > < span class = "linenos" > 753< / 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-754" > < a href = "#L-754" > < span class = "linenos" > 754< / 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" > case< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > when< / 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 = "s2" > " json_valid" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ),< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > else_< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > null< / span > < span class = "p" > ()))< / span >
< / span > < span id = "L-755" > < a href = "#L-755" > < span class = "linenos" > 755< / 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" > " JSON" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "L-756" > < a href = "#L-756" > < span class = "linenos" > 756< / span > < / a >
< / span > < span id = "L-757" > < a href = "#L-757" > < span class = "linenos" > 757< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timefromparts_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" > TimeFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-758" > < a href = "#L-758" > < span class = "linenos" > 758< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-759" > < a href = "#L-759" > < span class = "linenos" > 759< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "L-760" > < a href = "#L-760" > < span class = "linenos" > 760< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span >
< / span > < span id = "L-761" > < a href = "#L-761" > < span class = "linenos" > 761< / span > < / a > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ]< / span > < span class = "o" > +< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "L-762" > < a href = "#L-762" > < span class = "linenos" > 762< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-763" > < a href = "#L-763" > < span class = "linenos" > 763< / span > < / a >
< / span > < span id = "L-764" > < a href = "#L-764" > < span class = "linenos" > 764< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIME" < / 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-765" > < a href = "#L-765" > < span class = "linenos" > 765< / span > < / a >
< / span > < span id = "L-766" > < a href = "#L-766" > < span class = "linenos" > 766< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timestampfromparts_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" > TimestampFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-767" > < a href = "#L-767" > < span class = "linenos" > 767< / span > < / a > < span class = "n" > sec< / 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" > " sec" < / span > < span class = "p" > ]< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-768" > < a href = "#L-768" > < span class = "linenos" > 768< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-769" > < a href = "#L-769" > < span class = "linenos" > 769< / span > < / a > < span class = "n" > milli< / 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" > " milli" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-770" > < a href = "#L-770" > < span class = "linenos" > 770< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "L-771" > < a href = "#L-771" > < span class = "linenos" > 771< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > milli< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "L-772" > < a href = "#L-772" > < span class = "linenos" > 772< / span > < / a >
< / span > < span id = "L-773" > < a href = "#L-773" > < span class = "linenos" > 773< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-774" > < a href = "#L-774" > < span class = "linenos" > 774< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "L-775" > < a href = "#L-775" > < span class = "linenos" > 775< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "L-776" > < a href = "#L-776" > < span class = "linenos" > 776< / span > < / a >
< / span > < span id = "L-777" > < a href = "#L-777" > < span class = "linenos" > 777< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > or< / span > < span class = "n" > nano< / span > < span class = "p" > :< / span >
< / span > < span id = "L-778" > < a href = "#L-778" > < span class = "linenos" > 778< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > sec< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-779" > < a href = "#L-779" > < span class = "linenos" > 779< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-780" > < a href = "#L-780" > < span class = "linenos" > 780< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIMESTAMP" < / 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-781" > < a href = "#L-781" > < span class = "linenos" > 781< / span > < / a >
< / span > < span id = "L-782" > < a href = "#L-782" > < span class = "linenos" > 782< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > tablesample_sql< / span > < span class = "p" > (< / span >
< / span > < span id = "L-783" > < a href = "#L-783" > < span class = "linenos" > 783< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-784" > < a href = "#L-784" > < span class = "linenos" > 784< / span > < / a > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableSample< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-785" > < a href = "#L-785" > < span class = "linenos" > 785< / span > < / a > < span class = "n" > tablesample_keyword< / 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" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< / span > < span id = "L-786" > < a href = "#L-786" > < span class = "linenos" > 786< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-787" > < a href = "#L-787" > < span class = "linenos" > 787< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / 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" > Select< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-788" > < a href = "#L-788" > < span class = "linenos" > 788< / span > < / a > < span class = "c1" > # This sample clause only applies to a single source, not the entire resulting relation< / span >
< / span > < span id = "L-789" > < a href = "#L-789" > < span class = "linenos" > 789< / span > < / a > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "s2" > " TABLESAMPLE" < / span >
< / span > < span id = "L-790" > < a href = "#L-790" > < span class = "linenos" > 790< / span > < / a >
< / span > < span id = "L-791" > < a href = "#L-791" > < span class = "linenos" > 791< / 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" > " size" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-792" > < a href = "#L-792" > < span class = "linenos" > 792< / span > < / a > < span class = "n" > method< / 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" > " method" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-793" > < a href = "#L-793" > < span class = "linenos" > 793< / span > < / a > < span class = "k" > if< / span > < span class = "n" > method< / span > < span class = "ow" > and< / span > < span class = "n" > method< / 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 = "o" > !=< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > :< / span >
< / span > < span id = "L-794" > < a href = "#L-794" > < span class = "linenos" > 794< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "L-795" > < a href = "#L-795" > < span class = "linenos" > 795< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Sampling method < / span > < span class = "si" > {< / span > < span class = "n" > method< / span > < span class = "si" > }< / span > < span class = "s2" > is not supported with a discrete sample count, " < / span >
< / span > < span id = "L-796" > < a href = "#L-796" > < span class = "linenos" > 796< / span > < / a > < span class = "s2" > " defaulting to reservoir sampling" < / span >
< / span > < span id = "L-797" > < a href = "#L-797" > < span class = "linenos" > 797< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-798" > < a href = "#L-798" > < span class = "linenos" > 798< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > ))< / span >
< / span > < span id = "L-799" > < a href = "#L-799" > < span class = "linenos" > 799< / span > < / a >
< / span > < span id = "L-800" > < a href = "#L-800" > < span class = "linenos" > 800< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > tablesample_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "n" > tablesample_keyword< / span > < span class = "p" > )< / span >
< / span > < span id = "L-801" > < a href = "#L-801" > < span class = "linenos" > 801< / span > < / a >
< / span > < span id = "L-802" > < a href = "#L-802" > < span class = "linenos" > 802< / 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-803" > < a href = "#L-803" > < span class = "linenos" > 803< / span > < / a > < span class = "n" > multiplier< / 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" > int< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "L-804" > < a href = "#L-804" > < span class = "linenos" > 804< / span > < / a > < span class = "n" > unit< / span > < span class = "o" > =< / 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" > lower< / span > < span class = "p" > ()< / span >
< / span > < span id = "L-805" > < a href = "#L-805" > < span class = "linenos" > 805< / span > < / a >
< / span > < span id = "L-806" > < a href = "#L-806" > < span class = "linenos" > 806< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / 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-807" > < a href = "#L-807" > < span class = "linenos" > 807< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 7< / span >
< / span > < span id = "L-808" > < a href = "#L-808" > < span class = "linenos" > 808< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " quarter" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-809" > < a href = "#L-809" > < span class = "linenos" > 809< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 90< / span >
< / span > < span id = "L-810" > < a href = "#L-810" > < span class = "linenos" > 810< / span > < / a >
< / span > < span id = "L-811" > < a href = "#L-811" > < span class = "linenos" > 811< / span > < / a > < span class = "k" > if< / span > < span class = "n" > multiplier< / span > < span class = "p" > :< / span >
< / span > < span id = "L-812" > < a href = "#L-812" > < span class = "linenos" > 812< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > multiplier< / span > < span class = "si" > }< / span > < span class = "s2" > * < / span > < span class = "si" > {< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s1" > ' DAY' < / span > < span class = "p" > )))< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-813" > < a href = "#L-813" > < span class = "linenos" > 813< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-814" > < a href = "#L-814" > < span class = "linenos" > 814< / 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-815" > < a href = "#L-815" > < span class = "linenos" > 815< / span > < / a >
< / span > < span id = "L-816" > < a href = "#L-816" > < span class = "linenos" > 816< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > columndef_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" > ColumnDef< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > :< / span > < span class = "nb" > str< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-817" > < a href = "#L-817" > < span class = "linenos" > 817< / 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" > UserDefinedFunction< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-818" > < a href = "#L-818" > < span class = "linenos" > 818< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-819" > < a href = "#L-819" > < span class = "linenos" > 819< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > columndef_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > )< / span >
< / span > < span id = "L-820" > < a href = "#L-820" > < span class = "linenos" > 820< / span > < / a >
< / span > < span id = "L-821" > < a href = "#L-821" > < span class = "linenos" > 821< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > join_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" > Join< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-822" > < a href = "#L-822" > < span class = "linenos" > 822< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "L-823" > < a href = "#L-823" > < span class = "linenos" > 823< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > side< / span > < span class = "o" > ==< / span > < span class = "s2" > " LEFT" < / span >
< / span > < span id = "L-824" > < a href = "#L-824" > < span class = "linenos" > 824< / span > < / a > < span class = "ow" > and< / 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" > " on" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-825" > < a href = "#L-825" > < span class = "linenos" > 825< / span > < / a > < span class = "ow" > and< / span > < span class = "nb" > isinstance< / 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" > Unnest< / span > < span class = "p" > )< / span >
< / span > < span id = "L-826" > < a href = "#L-826" > < span class = "linenos" > 826< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "L-827" > < a href = "#L-827" > < span class = "linenos" > 827< / span > < / a > < span class = "c1" > # Some dialects support `LEFT JOIN UNNEST(...)` without an explicit ON clause< / span >
< / span > < span id = "L-828" > < a href = "#L-828" > < span class = "linenos" > 828< / span > < / a > < span class = "c1" > # DuckDB doesn' t, but we can just add a dummy ON clause that is always true< / span >
< / span > < span id = "L-829" > < a href = "#L-829" > < span class = "linenos" > 829< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > true< / span > < span class = "p" > ()))< / span >
< / span > < span id = "L-830" > < a href = "#L-830" > < span class = "linenos" > 830< / span > < / a >
< / span > < span id = "L-831" > < a href = "#L-831" > < span class = "linenos" > 831< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-832" > < a href = "#L-832" > < span class = "linenos" > 832< / span > < / a >
< / span > < span id = "L-833" > < a href = "#L-833" > < span class = "linenos" > 833< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > generateseries_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" > GenerateSeries< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-834" > < a href = "#L-834" > < span class = "linenos" > 834< / span > < / a > < span class = "c1" > # GENERATE_SERIES(a, b) -> [a, b], RANGE(a, b) -> [a, b)< / span >
< / span > < span id = "L-835" > < a href = "#L-835" > < span class = "linenos" > 835< / 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" > " is_end_exclusive" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-836" > < a href = "#L-836" > < span class = "linenos" > 836< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " RANGE" < / 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-837" > < a href = "#L-837" > < span class = "linenos" > 837< / span > < / a >
< / span > < span id = "L-838" > < a href = "#L-838" > < span class = "linenos" > 838< / 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-839" > < a href = "#L-839" > < span class = "linenos" > 839< / span > < / a >
< / span > < span id = "L-840" > < a href = "#L-840" > < span class = "linenos" > 840< / 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-841" > < a href = "#L-841" > < span class = "linenos" > 841< / 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-842" > < a href = "#L-842" > < span class = "linenos" > 842< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Array< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-843" > < a href = "#L-843" > < span class = "linenos" > 843< / span > < / a > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > replace< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > paren< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-844" > < a href = "#L-844" > < span class = "linenos" > 844< / span > < / a >
< / span > < span id = "L-845" > < a href = "#L-845" > < span class = "linenos" > 845< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / 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-846" > < a href = "#L-846" > < span class = "linenos" > 846< / span > < / a >
< / span > < span id = "L-847" > < a href = "#L-847" > < span class = "linenos" > 847< / 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" > " returns_list_for_maps" < / span > < span class = "p" > ):< / span >
< / span > < span id = "L-848" > < a href = "#L-848" > < span class = "linenos" > 848< / 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-849" > < a href = "#L-849" > < span class = "linenos" > 849< / 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-850" > < a href = "#L-850" > < span class = "linenos" > 850< / span > < / a >
< / span > < span id = "L-851" > < a href = "#L-851" > < span class = "linenos" > 851< / 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-852" > < a href = "#L-852" > < span class = "linenos" > 852< / span > < / a >
< / span > < span id = "L-853" > < a href = "#L-853" > < span class = "linenos" > 853< / 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 = "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" > MAP< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-854" > < a href = "#L-854" > < span class = "linenos" > 854< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > bracket< / span > < span class = "si" > }< / span > < span class = "s2" > )[1]" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-855" > < a href = "#L-855" > < span class = "linenos" > 855< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-856" > < a href = "#L-856" > < span class = "linenos" > 856< / span > < / a > < span class = "k" > return< / span > < span class = "n" > bracket< / span >
< / span > < span id = "L-857" > < a href = "#L-857" > < span class = "linenos" > 857< / span > < / a >
< / span > < span id = "L-858" > < a href = "#L-858" > < span class = "linenos" > 858< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > withingroup_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" > WithinGroup< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-859" > < a href = "#L-859" > < span class = "linenos" > 859< / span > < / a > < span class = "n" > expression_sql< / 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" > " expression" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-860" > < a href = "#L-860" > < span class = "linenos" > 860< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-861" > < a href = "#L-861" > < span class = "linenos" > 861< / span > < / a > < span class = "n" > func< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "L-862" > < a href = "#L-862" > < span class = "linenos" > 862< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > func< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PERCENTILES< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-863" > < a href = "#L-863" > < span class = "linenos" > 863< / span > < / a > < span class = "c1" > # Make the order key the first arg and slide the fraction to the right< / span >
< / span > < span id = "L-864" > < a href = "#L-864" > < span class = "linenos" > 864< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/aggregates#ordered-set-aggregate-functions< / span >
< / span > < span id = "L-865" > < a href = "#L-865" > < span class = "linenos" > 865< / span > < / a > < span class = "n" > order_col< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > find< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Ordered< / span > < span class = "p" > )< / span >
< / span > < span id = "L-866" > < a href = "#L-866" > < span class = "linenos" > 866< / span > < / a > < span class = "k" > if< / span > < span class = "n" > order_col< / span > < span class = "p" > :< / span >
< / span > < span id = "L-867" > < a href = "#L-867" > < span class = "linenos" > 867< / span > < / a > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ,< / span > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "L-868" > < a href = "#L-868" > < span class = "linenos" > 868< / span > < / a > < span class = "n" > func< / 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" > order_col< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "L-869" > < a href = "#L-869" > < span class = "linenos" > 869< / span > < / a >
< / span > < span id = "L-870" > < a href = "#L-870" > < span class = "linenos" > 870< / 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 class = "o" > .< / span > < span class = "n" > rstrip< / span > < span class = "p" > (< / span > < span class = "s2" > " )" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-871" > < a href = "#L-871" > < span class = "linenos" > 871< / span > < / a >
< / span > < span id = "L-872" > < a href = "#L-872" > < span class = "linenos" > 872< / 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" > expression_sql< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
< / span > < span id = "L-873" > < a href = "#L-873" > < span class = "linenos" > 873< / span > < / a >
< / span > < span id = "L-874" > < a href = "#L-874" > < span class = "linenos" > 874< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > length_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" > Length< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-875" > < a href = "#L-875" > < span class = "linenos" > 875< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-876" > < a href = "#L-876" > < span class = "linenos" > 876< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-877" > < a href = "#L-877" > < span class = "linenos" > 877< / span > < / a > < span class = "c1" > # Dialects like BQ and Snowflake also accept binary values as args, so< / span >
< / span > < span id = "L-878" > < a href = "#L-878" > < span class = "linenos" > 878< / span > < / a > < span class = "c1" > # DDB will attempt to infer the type or resort to case/when resolution< / span >
< / span > < span id = "L-879" > < a href = "#L-879" > < span class = "linenos" > 879< / 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" > " binary" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "p" > :< / span >
< / span > < span id = "L-880" > < a href = "#L-880" > < span class = "linenos" > 880< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "L-881" > < a href = "#L-881" > < span class = "linenos" > 881< / span > < / a >
< / span > < span id = "L-882" > < a href = "#L-882" > < span class = "linenos" > 882< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "L-883" > < a href = "#L-883" > < span class = "linenos" > 883< / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-884" > < a href = "#L-884" > < span class = "linenos" > 884< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-885" > < a href = "#L-885" > < span class = "linenos" > 885< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "L-886" > < a href = "#L-886" > < span class = "linenos" > 886< / span > < / a >
< / span > < span id = "L-887" > < a href = "#L-887" > < span class = "linenos" > 887< / span > < / a > < span class = "k" > if< / span > < span class = "n" > arg< / 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-888" > < a href = "#L-888" > < span class = "linenos" > 888< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-889" > < a href = "#L-889" > < span class = "linenos" > 889< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-890" > < a href = "#L-890" > < span class = "linenos" > 890< / span > < / a > < span class = "c1" > # We need these casts to make duckdb' s static type checker happy< / span >
< / span > < span id = "L-891" > < a href = "#L-891" > < span class = "linenos" > 891< / span > < / a > < span class = "n" > blob< / 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" > arg< / 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" > VARBINARY< / span > < span class = "p" > )< / span >
< / span > < span id = "L-892" > < a href = "#L-892" > < span class = "linenos" > 892< / span > < / a > < span class = "n" > varchar< / 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" > arg< / 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" > VARCHAR< / span > < span class = "p" > )< / span >
< / span > < span id = "L-893" > < a href = "#L-893" > < span class = "linenos" > 893< / span > < / a >
< / span > < span id = "L-894" > < a href = "#L-894" > < span class = "linenos" > 894< / span > < / a > < span class = "n" > case< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "L-895" > < a href = "#L-895" > < span class = "linenos" > 895< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > case< / 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" > " TYPEOF" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-896" > < a href = "#L-896" > < span class = "linenos" > 896< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span >
< / span > < span id = "L-897" > < a href = "#L-897" > < span class = "linenos" > 897< / span > < / a > < span class = "s2" > " ' VARCHAR' " < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Anonymous< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "s2" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > varchar< / span > < span class = "p" > ])< / span >
< / span > < span id = "L-898" > < a href = "#L-898" > < span class = "linenos" > 898< / span > < / a > < span class = "p" > )< / span > < span class = "c1" > # anonymous to break length_sql recursion< / span >
< / span > < span id = "L-899" > < a href = "#L-899" > < span class = "linenos" > 899< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span > < span class = "s2" > " ' BLOB' " < / 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" > " OCTET_LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > blob< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-900" > < a href = "#L-900" > < span class = "linenos" > 900< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-901" > < a href = "#L-901" > < span class = "linenos" > 901< / span > < / a >
< / span > < span id = "L-902" > < a href = "#L-902" > < span class = "linenos" > 902< / 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" > case< / span > < span class = "p" > )< / span >
< / span > < span id = "L-903" > < a href = "#L-903" > < span class = "linenos" > 903< / span > < / a >
< / span > < span id = "L-904" > < a href = "#L-904" > < span class = "linenos" > 904< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > objectinsert_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" > ObjectInsert< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-905" > < a href = "#L-905" > < span class = "linenos" > 905< / 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-906" > < a href = "#L-906" > < span class = "linenos" > 906< / span > < / a > < span class = "n" > key< / 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" > " key" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-907" > < a href = "#L-907" > < span class = "linenos" > 907< / span > < / a > < span class = "n" > key_sql< / span > < span class = "o" > =< / span > < span class = "n" > key< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > key< / 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 = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "L-908" > < a href = "#L-908" > < span class = "linenos" > 908< / span > < / a > < span class = "n" > value_sql< / 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" > " value" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-909" > < a href = "#L-909" > < span class = "linenos" > 909< / span > < / a >
< / span > < span id = "L-910" > < a href = "#L-910" > < span class = "linenos" > 910< / span > < / a > < span class = "n" > kv_sql< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > key_sql< / span > < span class = "si" > }< / span > < span class = "s2" > := < / span > < span class = "si" > {< / span > < span class = "n" > value_sql< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "L-911" > < a href = "#L-911" > < span class = "linenos" > 911< / span > < / a >
< / span > < span id = "L-912" > < a href = "#L-912" > < span class = "linenos" > 912< / span > < / a > < span class = "c1" > # If the input struct is empty e.g. transpiling OBJECT_INSERT(OBJECT_CONSTRUCT(), key, value) from Snowflake< / span >
< / span > < span id = "L-913" > < a href = "#L-913" > < span class = "linenos" > 913< / span > < / a > < span class = "c1" > # then we can generate STRUCT_PACK which will build it since STRUCT_INSERT({}, key := value) is not valid DuckDB< / span >
< / span > < span id = "L-914" > < a href = "#L-914" > < span class = "linenos" > 914< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Struct< / span > < span class = "p" > )< / span > < span class = "ow" > and< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "L-915" > < a href = "#L-915" > < span class = "linenos" > 915< / 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" > " STRUCT_PACK" < / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "L-916" > < a href = "#L-916" > < span class = "linenos" > 916< / span > < / a >
< / span > < span id = "L-917" > < a href = "#L-917" > < span class = "linenos" > 917< / 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" > " STRUCT_INSERT" < / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "L-918" > < a href = "#L-918" > < span class = "linenos" > 918< / span > < / a >
< / span > < span id = "L-919" > < a href = "#L-919" > < span class = "linenos" > 919< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > unnest_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" > Unnest< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-920" > < a href = "#L-920" > < span class = "linenos" > 920< / span > < / a > < span class = "n" > explode_array< / 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" > " explode_array" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-921" > < a href = "#L-921" > < span class = "linenos" > 921< / span > < / a > < span class = "k" > if< / span > < span class = "n" > explode_array< / span > < span class = "p" > :< / span >
< / span > < span id = "L-922" > < a href = "#L-922" > < span class = "linenos" > 922< / span > < / a > < span class = "c1" > # In BigQuery, UNNESTing a nested array leads to explosion of the top-level array & struct< / span >
< / span > < span id = "L-923" > < a href = "#L-923" > < span class = "linenos" > 923< / span > < / a > < span class = "c1" > # This is transpiled to DDB by transforming " FROM UNNEST(...)" to " FROM (SELECT UNNEST(..., max_depth => 2))" < / span >
< / span > < span id = "L-924" > < a href = "#L-924" > < span class = "linenos" > 924< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span >
< / span > < span id = "L-925" > < a href = "#L-925" > < span class = "linenos" > 925< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Kwarg< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " max_depth" < / span > < span class = "p" > ),< / span > < span class = "n" > expression< / 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" > 2< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-926" > < a href = "#L-926" > < span class = "linenos" > 926< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "L-927" > < a href = "#L-927" > < span class = "linenos" > 927< / span > < / a >
< / span > < span id = "L-928" > < a href = "#L-928" > < span class = "linenos" > 928< / span > < / a > < span class = "c1" > # If BQ' s UNNEST is aliased, we transform it from a column alias to a table alias in DDB< / span >
< / span > < span id = "L-929" > < a href = "#L-929" > < span class = "linenos" > 929< / span > < / a > < span class = "n" > alias< / 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" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-930" > < a href = "#L-930" > < span class = "linenos" > 930< / span > < / a > < span class = "k" > if< / span > < span class = "n" > alias< / span > < span class = "p" > :< / span >
< / span > < span id = "L-931" > < a href = "#L-931" > < span class = "linenos" > 931< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "L-932" > < a href = "#L-932" > < span class = "linenos" > 932< / span > < / a > < span class = "n" > alias< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableAlias< / 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" > alias< / 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" > " columns" < / span > < span class = "p" > ),< / span > < span class = "mi" > 0< / span > < span class = "p" > ))< / span >
< / span > < span id = "L-933" > < a href = "#L-933" > < span class = "linenos" > 933< / span > < / a >
< / span > < span id = "L-934" > < a href = "#L-934" > < span class = "linenos" > 934< / span > < / a > < span class = "n" > unnest_sql< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-935" > < a href = "#L-935" > < span class = "linenos" > 935< / span > < / a > < span class = "n" > select< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > (< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > ])< / span > < span class = "o" > .< / span > < span class = "n" > subquery< / span > < span class = "p" > (< / span > < span class = "n" > alias< / span > < span class = "p" > )< / span >
< / span > < span id = "L-936" > < a href = "#L-936" > < span class = "linenos" > 936< / 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" > select< / span > < span class = "p" > )< / span >
< / span > < span id = "L-937" > < a href = "#L-937" > < span class = "linenos" > 937< / span > < / a >
< / span > < span id = "L-938" > < a href = "#L-938" > < span class = "linenos" > 938< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-939" > < a href = "#L-939" > < span class = "linenos" > 939< / span > < / a >
< / span > < span id = "L-940" > < a href = "#L-940" > < span class = "linenos" > 940< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > ignorenulls_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" > IgnoreNulls< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-941" > < a href = "#L-941" > < span class = "linenos" > 941< / 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" > this< / span > < span class = "p" > ,< / span > < span class = "n" > WINDOW_FUNCS_WITH_IGNORE_NULLS< / span > < span class = "p" > ):< / span >
< / span > < span id = "L-942" > < a href = "#L-942" > < span class = "linenos" > 942< / span > < / a > < span class = "c1" > # DuckDB should render IGNORE NULLS only for the general-purpose< / span >
< / span > < span id = "L-943" > < a href = "#L-943" > < span class = "linenos" > 943< / span > < / a > < span class = "c1" > # window functions that accept it e.g. FIRST_VALUE(... IGNORE NULLS) OVER (...)< / span >
< / span > < span id = "L-944" > < a href = "#L-944" > < span class = "linenos" > 944< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > ignorenulls_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "L-945" > < a href = "#L-945" > < span class = "linenos" > 945< / span > < / a >
< / span > < span id = "L-946" > < a href = "#L-946" > < span class = "linenos" > 946< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-947" > < a href = "#L-947" > < span class = "linenos" > 947< / span > < / a >
< / span > < span id = "L-948" > < a href = "#L-948" > < span class = "linenos" > 948< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > arraytostring_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" > ArrayToString< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-949" > < a href = "#L-949" > < span class = "linenos" > 949< / 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-950" > < a href = "#L-950" > < span class = "linenos" > 950< / span > < / a > < span class = "n" > null_text< / 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" > " null" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-951" > < a href = "#L-951" > < span class = "linenos" > 951< / span > < / a >
< / span > < span id = "L-952" > < a href = "#L-952" > < span class = "linenos" > 952< / span > < / a > < span class = "k" > if< / span > < span class = "n" > null_text< / span > < span class = "p" > :< / span >
< / span > < span id = "L-953" > < a href = "#L-953" > < span class = "linenos" > 953< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " LIST_TRANSFORM(< / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }< / span > < span class = "s2" > , x -> COALESCE(x, < / span > < span class = "si" > {< / span > < span class = "n" > null_text< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "L-954" > < a href = "#L-954" > < span class = "linenos" > 954< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "L-955" > < a href = "#L-955" > < span class = "linenos" > 955< / 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_TO_STRING" < / span > < span class = "p" > ,< / 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 > < span id = "L-956" > < a href = "#L-956" > < span class = "linenos" > 956< / span > < / a >
< / span > < span id = "L-957" > < a href = "#L-957" > < span class = "linenos" > 957< / span > < / a > < span class = "nd" > @unsupported_args< / span > < span class = "p" > (< / span > < span class = "s2" > " position" < / span > < span class = "p" > ,< / span > < span class = "s2" > " occurrence" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-958" > < a href = "#L-958" > < span class = "linenos" > 958< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > regexpextract_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" > RegexpExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "L-959" > < a href = "#L-959" > < span class = "linenos" > 959< / span > < / a > < span class = "n" > group< / 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" > " group" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-960" > < a href = "#L-960" > < span class = "linenos" > 960< / span > < / a > < span class = "n" > params< / 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" > " parameters" < / span > < span class = "p" > )< / span >
< / span > < span id = "L-961" > < a href = "#L-961" > < span class = "linenos" > 961< / span > < / a >
< / span > < span id = "L-962" > < a href = "#L-962" > < span class = "linenos" > 962< / span > < / a > < span class = "c1" > # Do not render group if there is no following argument,< / span >
< / span > < span id = "L-963" > < a href = "#L-963" > < span class = "linenos" > 963< / span > < / a > < span class = "c1" > # and it' s the default value for this dialect< / span >
< / span > < span id = "L-964" > < a href = "#L-964" > < span class = "linenos" > 964< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "L-965" > < a href = "#L-965" > < span class = "linenos" > 965< / span > < / a > < span class = "ow" > not< / span > < span class = "n" > params< / span >
< / span > < span id = "L-966" > < a href = "#L-966" > < span class = "linenos" > 966< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span >
< / span > < span id = "L-967" > < a href = "#L-967" > < span class = "linenos" > 967< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "o" > ==< / span > < span class = "nb" > str< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > REGEXP_EXTRACT_DEFAULT_GROUP< / span > < span class = "p" > )< / span >
< / span > < span id = "L-968" > < a href = "#L-968" > < span class = "linenos" > 968< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "L-969" > < a href = "#L-969" > < span class = "linenos" > 969< / span > < / a > < span class = "n" > group< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "L-970" > < a href = "#L-970" > < span class = "linenos" > 970< / 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-971" > < a href = "#L-971" > < span class = "linenos" > 971< / span > < / a > < span class = "s2" > " REGEXP_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 = "n" > group< / span > < span class = "p" > ,< / span > < span class = "n" > params< / span >
< / span > < span id = "L-972" > < a href = "#L-972" > < span class = "linenos" > 972< / span > < / a > < span class = "p" > )< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
< / section >
2025-02-13 21:51:42 +01:00
< section id = "DATETIME_DELTA" >
< div class = "attr variable" >
< span class = "name" > DATETIME_DELTA< / span > =
< input id = "DATETIME_DELTA-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "DATETIME_DELTA-view-value" > < / label > < span class = "default_value" > typing.Union[< a href = "../expressions.html#DateAdd" > sqlglot.expressions.DateAdd< / a > , < a href = "../expressions.html#TimeAdd" > sqlglot.expressions.TimeAdd< / a > , < a href = "../expressions.html#DatetimeAdd" > sqlglot.expressions.DatetimeAdd< / a > , < a href = "../expressions.html#TsOrDsAdd" > sqlglot.expressions.TsOrDsAdd< / a > , < a href = "../expressions.html#DateSub" > sqlglot.expressions.DateSub< / a > , < a href = "../expressions.html#DatetimeSub" > sqlglot.expressions.DatetimeSub< / a > ]< / span >
< / div >
< a class = "headerlink" href = "#DATETIME_DELTA" > < / a >
2025-02-13 21:54:13 +01:00
< / section >
< section id = "WINDOW_FUNCS_WITH_IGNORE_NULLS" >
< div class = "attr variable" >
< span class = "name" > WINDOW_FUNCS_WITH_IGNORE_NULLS< / span > =
< input id = "WINDOW_FUNCS_WITH_IGNORE_NULLS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "WINDOW_FUNCS_WITH_IGNORE_NULLS-view-value" > < / label > < span class = "default_value" > (< class ' < a href = "../expressions.html#FirstValue" > sqlglot.expressions.FirstValue< / a > ' > , < class ' < a href = "../expressions.html#LastValue" > sqlglot.expressions.LastValue< / a > ' > , < class ' < a href = "../expressions.html#Lag" > sqlglot.expressions.Lag< / a > ' > , < class ' < a href = "../expressions.html#Lead" > sqlglot.expressions.Lead< / a > ' > , < class ' < a href = "../expressions.html#NthValue" > sqlglot.expressions.NthValue< / a > ' > )< / span >
< / div >
< a class = "headerlink" href = "#WINDOW_FUNCS_WITH_IGNORE_NULLS" > < / a >
2025-02-13 21:52:10 +01:00
< / section >
< section id = "WRAPPED_JSON_EXTRACT_EXPRESSIONS" >
< div class = "attr variable" >
< span class = "name" > WRAPPED_JSON_EXTRACT_EXPRESSIONS< / span > =
< input id = "WRAPPED_JSON_EXTRACT_EXPRESSIONS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "WRAPPED_JSON_EXTRACT_EXPRESSIONS-view-value" > < / label > < span class = "default_value" > (< class ' < a href = "../expressions.html#Binary" > sqlglot.expressions.Binary< / a > ' > , < class ' < a href = "../expressions.html#Bracket" > sqlglot.expressions.Bracket< / a > ' > , < class ' < a href = "../expressions.html#In" > sqlglot.expressions.In< / a > ' > )< / span >
< / div >
< a class = "headerlink" href = "#WRAPPED_JSON_EXTRACT_EXPRESSIONS" > < / a >
2025-02-13 21:51:42 +01:00
< / section >
2025-02-13 15:23:26 +01:00
< section id = "DuckDB" >
< input id = "DuckDB-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" > DuckDB< / span > < wbr > (< span class = "base" > < a href = "dialect.html#Dialect" > sqlglot.dialects.dialect.Dialect< / a > < / span > ):
< label class = "view-source-button" for = "DuckDB-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB" > < / a >
2025-02-13 21:56:19 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB-261" > < a href = "#DuckDB-261" > < span class = "linenos" > 261< / span > < / a > < span class = "k" > class< / span > < span class = "nc" > DuckDB< / span > < span class = "p" > (< / span > < span class = "n" > Dialect< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-262" > < a href = "#DuckDB-262" > < span class = "linenos" > 262< / span > < / a > < span class = "n" > NULL_ORDERING< / span > < span class = "o" > =< / span > < span class = "s2" > " nulls_are_last" < / span >
< / span > < span id = "DuckDB-263" > < a href = "#DuckDB-263" > < span class = "linenos" > 263< / span > < / a > < span class = "n" > SUPPORTS_USER_DEFINED_TYPES< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-264" > < a href = "#DuckDB-264" > < span class = "linenos" > 264< / span > < / a > < span class = "n" > SAFE_DIVISION< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-265" > < a href = "#DuckDB-265" > < span class = "linenos" > 265< / span > < / a > < span class = "n" > INDEX_OFFSET< / span > < span class = "o" > =< / span > < span class = "mi" > 1< / span >
< / span > < span id = "DuckDB-266" > < a href = "#DuckDB-266" > < span class = "linenos" > 266< / span > < / a > < span class = "n" > CONCAT_COALESCE< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-267" > < a href = "#DuckDB-267" > < span class = "linenos" > 267< / span > < / a > < span class = "n" > SUPPORTS_ORDER_BY_ALL< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-268" > < a href = "#DuckDB-268" > < span class = "linenos" > 268< / span > < / a > < span class = "n" > SUPPORTS_FIXED_SIZE_ARRAYS< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-269" > < a href = "#DuckDB-269" > < span class = "linenos" > 269< / span > < / a > < span class = "n" > STRICT_JSON_PATH_SYNTAX< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-270" > < a href = "#DuckDB-270" > < span class = "linenos" > 270< / span > < / a >
< / span > < span id = "DuckDB-271" > < a href = "#DuckDB-271" > < span class = "linenos" > 271< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/introduction.html#creating-a-new-table< / span >
< / span > < span id = "DuckDB-272" > < a href = "#DuckDB-272" > < span class = "linenos" > 272< / 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 = "DuckDB-273" > < a href = "#DuckDB-273" > < span class = "linenos" > 273< / span > < / a >
< / span > < span id = "DuckDB-274" > < a href = "#DuckDB-274" > < span class = "linenos" > 274< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > to_json_path< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > path< / 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" > Expression< / span > < span class = "p" > ])< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB-275" > < a href = "#DuckDB-275" > < span class = "linenos" > 275< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > path< / 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 = "DuckDB-276" > < a href = "#DuckDB-276" > < span class = "linenos" > 276< / span > < / a > < span class = "c1" > # DuckDB also supports the JSON pointer syntax, where every path starts with a `/`.< / span >
< / span > < span id = "DuckDB-277" > < a href = "#DuckDB-277" > < span class = "linenos" > 277< / span > < / a > < span class = "c1" > # Additionally, it allows accessing the back of lists using the `[#-i]` syntax.< / span >
< / span > < span id = "DuckDB-278" > < a href = "#DuckDB-278" > < span class = "linenos" > 278< / span > < / a > < span class = "c1" > # This check ensures we' ll avoid trying to parse these as JSON paths, which can< / span >
< / span > < span id = "DuckDB-279" > < a href = "#DuckDB-279" > < span class = "linenos" > 279< / span > < / a > < span class = "c1" > # either result in a noisy warning or in an invalid representation of the path.< / span >
< / span > < span id = "DuckDB-280" > < a href = "#DuckDB-280" > < span class = "linenos" > 280< / span > < / a > < span class = "n" > path_text< / span > < span class = "o" > =< / span > < span class = "n" > path< / span > < span class = "o" > .< / span > < span class = "n" > name< / span >
< / span > < span id = "DuckDB-281" > < a href = "#DuckDB-281" > < span class = "linenos" > 281< / span > < / a > < span class = "k" > if< / span > < span class = "n" > path_text< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " /" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "s2" > " [#" < / span > < span class = "ow" > in< / span > < span class = "n" > path_text< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-282" > < a href = "#DuckDB-282" > < span class = "linenos" > 282< / span > < / a > < span class = "k" > return< / span > < span class = "n" > path< / span >
< / span > < span id = "DuckDB-283" > < a href = "#DuckDB-283" > < span class = "linenos" > 283< / span > < / a >
< / span > < span id = "DuckDB-284" > < a href = "#DuckDB-284" > < span class = "linenos" > 284< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > to_json_path< / span > < span class = "p" > (< / span > < span class = "n" > path< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-285" > < a href = "#DuckDB-285" > < span class = "linenos" > 285< / span > < / a >
< / span > < span id = "DuckDB-286" > < a href = "#DuckDB-286" > < span class = "linenos" > 286< / 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 = "DuckDB-287" > < a href = "#DuckDB-287" > < span class = "linenos" > 287< / span > < / a > < span class = "n" > HEREDOC_STRINGS< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "s2" > " $" < / span > < span class = "p" > ]< / span >
< / span > < span id = "DuckDB-288" > < a href = "#DuckDB-288" > < span class = "linenos" > 288< / span > < / a >
< / span > < span id = "DuckDB-289" > < a href = "#DuckDB-289" > < span class = "linenos" > 289< / span > < / a > < span class = "n" > HEREDOC_TAG_IS_IDENTIFIER< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-290" > < a href = "#DuckDB-290" > < span class = "linenos" > 290< / span > < / a > < span class = "n" > HEREDOC_STRING_ALTERNATIVE< / span > < span class = "o" > =< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span >
< / span > < span id = "DuckDB-291" > < a href = "#DuckDB-291" > < span class = "linenos" > 291< / span > < / a >
< / span > < span id = "DuckDB-292" > < a href = "#DuckDB-292" > < span class = "linenos" > 292< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-293" > < a href = "#DuckDB-293" > < span class = "linenos" > 293< / 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 = "DuckDB-294" > < a href = "#DuckDB-294" > < span class = "linenos" > 294< / span > < / a > < span class = "s2" > " //" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DIV< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-295" > < a href = "#DuckDB-295" > < span class = "linenos" > 295< / span > < / a > < span class = "s2" > " **" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DSTAR< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-296" > < a href = "#DuckDB-296" > < span class = "linenos" > 296< / span > < / a > < span class = "s2" > " ^@" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET_AT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-297" > < a href = "#DuckDB-297" > < span class = "linenos" > 297< / span > < / a > < span class = "s2" > " @> " < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > AT_GT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-298" > < a href = "#DuckDB-298" > < span class = "linenos" > 298< / span > < / a > < span class = "s2" > " < @" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > LT_AT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-299" > < a href = "#DuckDB-299" > < span class = "linenos" > 299< / span > < / a > < span class = "s2" > " ATTACH" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > COMMAND< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-300" > < a href = "#DuckDB-300" > < span class = "linenos" > 300< / span > < / a > < span class = "s2" > " BINARY" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > VARBINARY< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-301" > < a href = "#DuckDB-301" > < span class = "linenos" > 301< / span > < / a > < span class = "s2" > " BITSTRING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BIT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-302" > < a href = "#DuckDB-302" > < span class = "linenos" > 302< / span > < / a > < span class = "s2" > " BPCHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-303" > < a href = "#DuckDB-303" > < span class = "linenos" > 303< / span > < / a > < span class = "s2" > " CHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-304" > < a href = "#DuckDB-304" > < span class = "linenos" > 304< / span > < / a > < span class = "s2" > " CHARACTER VARYING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-305" > < a href = "#DuckDB-305" > < span class = "linenos" > 305< / span > < / a > < span class = "s2" > " EXCLUDE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > EXCEPT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-306" > < a href = "#DuckDB-306" > < span class = "linenos" > 306< / span > < / a > < span class = "s2" > " LOGICAL" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BOOLEAN< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-307" > < a href = "#DuckDB-307" > < span class = "linenos" > 307< / span > < / a > < span class = "s2" > " ONLY" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > ONLY< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-308" > < a href = "#DuckDB-308" > < span class = "linenos" > 308< / span > < / a > < span class = "s2" > " PIVOT_WIDER" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PIVOT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-309" > < a href = "#DuckDB-309" > < span class = "linenos" > 309< / span > < / a > < span class = "s2" > " POSITIONAL" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > POSITIONAL< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-310" > < a href = "#DuckDB-310" > < span class = "linenos" > 310< / span > < / a > < span class = "s2" > " SIGNED" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > INT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-311" > < a href = "#DuckDB-311" > < span class = "linenos" > 311< / span > < / a > < span class = "s2" > " STRING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-312" > < a href = "#DuckDB-312" > < span class = "linenos" > 312< / span > < / a > < span class = "s2" > " SUMMARIZE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > SUMMARIZE< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-313" > < a href = "#DuckDB-313" > < span class = "linenos" > 313< / span > < / a > < span class = "s2" > " TIMESTAMP_S" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_S< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-314" > < a href = "#DuckDB-314" > < span class = "linenos" > 314< / span > < / a > < span class = "s2" > " TIMESTAMP_MS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_MS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-315" > < a href = "#DuckDB-315" > < span class = "linenos" > 315< / span > < / a > < span class = "s2" > " TIMESTAMP_NS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_NS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-316" > < a href = "#DuckDB-316" > < span class = "linenos" > 316< / span > < / a > < span class = "s2" > " TIMESTAMP_US" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-317" > < a href = "#DuckDB-317" > < span class = "linenos" > 317< / span > < / a > < span class = "s2" > " UBIGINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UBIGINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-318" > < a href = "#DuckDB-318" > < span class = "linenos" > 318< / span > < / a > < span class = "s2" > " UINTEGER" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-319" > < a href = "#DuckDB-319" > < span class = "linenos" > 319< / span > < / a > < span class = "s2" > " USMALLINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > USMALLINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-320" > < a href = "#DuckDB-320" > < span class = "linenos" > 320< / span > < / a > < span class = "s2" > " UTINYINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UTINYINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-321" > < a href = "#DuckDB-321" > < span class = "linenos" > 321< / span > < / a > < span class = "s2" > " VARCHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-322" > < a href = "#DuckDB-322" > < span class = "linenos" > 322< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-323" > < a href = "#DuckDB-323" > < span class = "linenos" > 323< / 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 = "DuckDB-324" > < a href = "#DuckDB-324" > < span class = "linenos" > 324< / span > < / a >
< / span > < span id = "DuckDB-325" > < a href = "#DuckDB-325" > < span class = "linenos" > 325< / span > < / a > < span class = "n" > SINGLE_TOKENS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-326" > < a href = "#DuckDB-326" > < span class = "linenos" > 326< / 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" > SINGLE_TOKENS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-327" > < a href = "#DuckDB-327" > < span class = "linenos" > 327< / span > < / a > < span class = "s2" > " $" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-328" > < a href = "#DuckDB-328" > < span class = "linenos" > 328< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-329" > < a href = "#DuckDB-329" > < span class = "linenos" > 329< / span > < / a >
< / span > < span id = "DuckDB-330" > < a href = "#DuckDB-330" > < span class = "linenos" > 330< / 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 = "DuckDB-331" > < a href = "#DuckDB-331" > < span class = "linenos" > 331< / span > < / a > < span class = "n" > BITWISE< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-332" > < a href = "#DuckDB-332" > < span class = "linenos" > 332< / 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" > BITWISE< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-333" > < a href = "#DuckDB-333" > < span class = "linenos" > 333< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TILDA< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-334" > < a href = "#DuckDB-334" > < span class = "linenos" > 334< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-335" > < a href = "#DuckDB-335" > < span class = "linenos" > 335< / span > < / a > < span class = "n" > BITWISE< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-336" > < a href = "#DuckDB-336" > < span class = "linenos" > 336< / span > < / a >
< / span > < span id = "DuckDB-337" > < a href = "#DuckDB-337" > < span class = "linenos" > 337< / span > < / a > < span class = "n" > RANGE_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-338" > < a href = "#DuckDB-338" > < span class = "linenos" > 338< / 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" > RANGE_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-339" > < a href = "#DuckDB-339" > < span class = "linenos" > 339< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DAMP< / span > < span class = "p" > :< / span > < span class = "n" > binary_range_parser< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayOverlaps< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-340" > < a href = "#DuckDB-340" > < span class = "linenos" > 340< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET_AT< / span > < span class = "p" > :< / span > < span class = "n" > binary_range_parser< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StartsWith< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-341" > < a href = "#DuckDB-341" > < span class = "linenos" > 341< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-342" > < a href = "#DuckDB-342" > < span class = "linenos" > 342< / span > < / a >
< / span > < span id = "DuckDB-343" > < a href = "#DuckDB-343" > < span class = "linenos" > 343< / span > < / a > < span class = "n" > EXPONENT< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-344" > < a href = "#DuckDB-344" > < span class = "linenos" > 344< / 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" > EXPONENT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-345" > < a href = "#DuckDB-345" > < span class = "linenos" > 345< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pow< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-346" > < a href = "#DuckDB-346" > < span class = "linenos" > 346< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DSTAR< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pow< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-347" > < a href = "#DuckDB-347" > < span class = "linenos" > 347< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-348" > < a href = "#DuckDB-348" > < span class = "linenos" > 348< / span > < / a >
< / span > < span id = "DuckDB-349" > < a href = "#DuckDB-349" > < span class = "linenos" > 349< / span > < / a > < span class = "n" > FUNCTIONS_WITH_ALIASED_ARGS< / span > < span class = "o" > =< / span > < span class = "p" > {< / 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" > FUNCTIONS_WITH_ALIASED_ARGS< / span > < span class = "p" > ,< / span > < span class = "s2" > " STRUCT_PACK" < / span > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-350" > < a href = "#DuckDB-350" > < span class = "linenos" > 350< / span > < / a >
< / span > < span id = "DuckDB-351" > < a href = "#DuckDB-351" > < span class = "linenos" > 351< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-352" > < a href = "#DuckDB-352" > < span class = "linenos" > 352< / 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 = "DuckDB-353" > < a href = "#DuckDB-353" > < span class = "linenos" > 353< / span > < / a > < span class = "s2" > " ARRAY_REVERSE_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > _build_sort_array_desc< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-354" > < a href = "#DuckDB-354" > < span class = "linenos" > 354< / span > < / a > < span class = "s2" > " ARRAY_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-355" > < a href = "#DuckDB-355" > < span class = "linenos" > 355< / span > < / a > < span class = "s2" > " DATEDIFF" < / span > < span class = "p" > :< / span > < span class = "n" > _build_date_diff< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-356" > < a href = "#DuckDB-356" > < span class = "linenos" > 356< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > :< / span > < span class = "n" > _build_date_diff< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-357" > < a href = "#DuckDB-357" > < span class = "linenos" > 357< / 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 = "DuckDB-358" > < a href = "#DuckDB-358" > < span class = "linenos" > 358< / span > < / a > < span class = "s2" > " DATETRUNC" < / span > < span class = "p" > :< / span > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-359" > < a href = "#DuckDB-359" > < span class = "linenos" > 359< / span > < / a > < span class = "s2" > " DECODE" < / 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 = "DuckDB-360" > < a href = "#DuckDB-360" > < span class = "linenos" > 360< / 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 = "DuckDB-361" > < a href = "#DuckDB-361" > < span class = "linenos" > 361< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-362" > < a href = "#DuckDB-362" > < span class = "linenos" > 362< / span > < / a > < span class = "s2" > " ENCODE" < / 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 = "DuckDB-363" > < a href = "#DuckDB-363" > < span class = "linenos" > 363< / 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 = "DuckDB-364" > < a href = "#DuckDB-364" > < span class = "linenos" > 364< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-365" > < a href = "#DuckDB-365" > < span class = "linenos" > 365< / span > < / a > < span class = "s2" > " EPOCH" < / 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 = "DuckDB-366" > < a href = "#DuckDB-366" > < span class = "linenos" > 366< / span > < / a > < span class = "s2" > " EPOCH_MS" < / 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" > UnixToTime< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-367" > < a href = "#DuckDB-367" > < span class = "linenos" > 367< / 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" > scale< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > MILLIS< / span >
< / span > < span id = "DuckDB-368" > < a href = "#DuckDB-368" > < span class = "linenos" > 368< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-369" > < a href = "#DuckDB-369" > < span class = "linenos" > 369< / span > < / a > < span class = "s2" > " JSON" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ParseJSON< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-370" > < a href = "#DuckDB-370" > < span class = "linenos" > 370< / span > < / a > < span class = "s2" > " JSON_EXTRACT_PATH" < / span > < span class = "p" > :< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > build_extract_json_with_path< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-371" > < a href = "#DuckDB-371" > < span class = "linenos" > 371< / span > < / a > < span class = "s2" > " JSON_EXTRACT_STRING" < / span > < span class = "p" > :< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > build_extract_json_with_path< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtractScalar< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-372" > < a href = "#DuckDB-372" > < span class = "linenos" > 372< / span > < / a > < span class = "s2" > " LIST_HAS" < / 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 = "DuckDB-373" > < a href = "#DuckDB-373" > < span class = "linenos" > 373< / span > < / a > < span class = "s2" > " LIST_REVERSE_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > _build_sort_array_desc< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-374" > < a href = "#DuckDB-374" > < span class = "linenos" > 374< / span > < / a > < span class = "s2" > " LIST_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-375" > < a href = "#DuckDB-375" > < span class = "linenos" > 375< / span > < / a > < span class = "s2" > " LIST_VALUE" < / 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" > Array< / span > < span class = "p" > (< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "n" > args< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-376" > < a href = "#DuckDB-376" > < span class = "linenos" > 376< / span > < / a > < span class = "s2" > " MAKE_TIME" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeFromParts< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-377" > < a href = "#DuckDB-377" > < span class = "linenos" > 377< / span > < / a > < span class = "s2" > " MAKE_TIMESTAMP" < / span > < span class = "p" > :< / span > < span class = "n" > _build_make_timestamp< / span > < span class = "p" > ,< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-378" > < a href = "#DuckDB-378" > < span class = "linenos" > 378< / span > < / a > < span class = "s2" > " QUANTILE_CONT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileCont< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-379" > < a href = "#DuckDB-379" > < span class = "linenos" > 379< / span > < / a > < span class = "s2" > " QUANTILE_DISC" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileDisc< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-380" > < a href = "#DuckDB-380" > < span class = "linenos" > 380< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-381" > < a href = "#DuckDB-381" > < span class = "linenos" > 381< / span > < / a > < span class = "s2" > " REGEXP_MATCHES" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-382" > < a href = "#DuckDB-382" > < span class = "linenos" > 382< / 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 = "DuckDB-383" > < a href = "#DuckDB-383" > < span class = "linenos" > 383< / 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 = "DuckDB-384" > < a href = "#DuckDB-384" > < span class = "linenos" > 384< / 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 = "DuckDB-385" > < a href = "#DuckDB-385" > < span class = "linenos" > 385< / 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 > < span id = "DuckDB-386" > < a href = "#DuckDB-386" > < span class = "linenos" > 386< / span > < / a > < span class = "n" > modifiers< / 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 = "DuckDB-387" > < a href = "#DuckDB-387" > < span class = "linenos" > 387< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-388" > < a href = "#DuckDB-388" > < span class = "linenos" > 388< / span > < / a > < span class = "s2" > " STRFTIME" < / 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" > " duckdb" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-389" > < a href = "#DuckDB-389" > < span class = "linenos" > 389< / span > < / a > < span class = "s2" > " STRING_SPLIT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-390" > < a href = "#DuckDB-390" > < span class = "linenos" > 390< / span > < / a > < span class = "s2" > " STRING_SPLIT_REGEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-391" > < a href = "#DuckDB-391" > < span class = "linenos" > 391< / span > < / a > < span class = "s2" > " STRING_TO_ARRAY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-392" > < a href = "#DuckDB-392" > < span class = "linenos" > 392< / span > < / a > < span class = "s2" > " STRPTIME" < / 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" > " duckdb" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-393" > < a href = "#DuckDB-393" > < span class = "linenos" > 393< / span > < / a > < span class = "s2" > " STRUCT_PACK" < / 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 = "DuckDB-394" > < a href = "#DuckDB-394" > < span class = "linenos" > 394< / span > < / a > < span class = "s2" > " STR_SPLIT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-395" > < a href = "#DuckDB-395" > < span class = "linenos" > 395< / span > < / a > < span class = "s2" > " STR_SPLIT_REGEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-396" > < a href = "#DuckDB-396" > < span class = "linenos" > 396< / span > < / a > < span class = "s2" > " TO_TIMESTAMP" < / 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" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-397" > < a href = "#DuckDB-397" > < span class = "linenos" > 397< / span > < / a > < span class = "s2" > " UNNEST" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Explode< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-398" > < a href = "#DuckDB-398" > < span class = "linenos" > 398< / span > < / a > < span class = "s2" > " 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 = "DuckDB-399" > < a href = "#DuckDB-399" > < span class = "linenos" > 399< / span > < / a > < span class = "s2" > " GENERATE_SERIES" < / span > < span class = "p" > :< / span > < span class = "n" > _build_generate_series< / span > < span class = "p" > (),< / span >
< / span > < span id = "DuckDB-400" > < a href = "#DuckDB-400" > < span class = "linenos" > 400< / span > < / a > < span class = "s2" > " RANGE" < / span > < span class = "p" > :< / span > < span class = "n" > _build_generate_series< / span > < span class = "p" > (< / span > < span class = "n" > end_exclusive< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-401" > < a href = "#DuckDB-401" > < span class = "linenos" > 401< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-402" > < a href = "#DuckDB-402" > < span class = "linenos" > 402< / span > < / a >
< / span > < span id = "DuckDB-403" > < a href = "#DuckDB-403" > < span class = "linenos" > 403< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_SUB" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-404" > < a href = "#DuckDB-404" > < span class = "linenos" > 404< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " GLOB" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-405" > < a href = "#DuckDB-405" > < span class = "linenos" > 405< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-406" > < a href = "#DuckDB-406" > < span class = "linenos" > 406< / 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 = "DuckDB-407" > < a href = "#DuckDB-407" > < span class = "linenos" > 407< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " DECODE" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-408" > < a href = "#DuckDB-408" > < span class = "linenos" > 408< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-409" > < a href = "#DuckDB-409" > < span class = "linenos" > 409< / span > < / a > < span class = "n" > NO_PAREN_FUNCTION_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-410" > < a href = "#DuckDB-410" > < span class = "linenos" > 410< / 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" > NO_PAREN_FUNCTION_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-411" > < a href = "#DuckDB-411" > < span class = "linenos" > 411< / span > < / a > < span class = "s2" > " MAP" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_map< / span > < span class = "p" > (),< / span >
< / span > < span id = "DuckDB-412" > < a href = "#DuckDB-412" > < span class = "linenos" > 412< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-413" > < a href = "#DuckDB-413" > < span class = "linenos" > 413< / span > < / a >
< / span > < span id = "DuckDB-414" > < a href = "#DuckDB-414" > < span class = "linenos" > 414< / span > < / a > < span class = "n" > TABLE_ALIAS_TOKENS< / 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" > TABLE_ALIAS_TOKENS< / span > < span class = "o" > -< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-415" > < a href = "#DuckDB-415" > < span class = "linenos" > 415< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > SEMI< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-416" > < a href = "#DuckDB-416" > < span class = "linenos" > 416< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > ANTI< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-417" > < a href = "#DuckDB-417" > < span class = "linenos" > 417< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-418" > < a href = "#DuckDB-418" > < span class = "linenos" > 418< / span > < / a >
< / span > < span id = "DuckDB-419" > < a href = "#DuckDB-419" > < span class = "linenos" > 419< / span > < / a > < span class = "n" > PLACEHOLDER_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-420" > < a href = "#DuckDB-420" > < span class = "linenos" > 420< / 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" > PLACEHOLDER_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-421" > < a href = "#DuckDB-421" > < span class = "linenos" > 421< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-422" > < a href = "#DuckDB-422" > < span class = "linenos" > 422< / span > < / a > < span class = "bp" > self< / 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" > Placeholder< / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _prev< / span > < span class = "o" > .< / span > < span class = "n" > text< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-423" > < a href = "#DuckDB-423" > < span class = "linenos" > 423< / span > < / a > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > NUMBER< / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match_set< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > ID_VAR_TOKENS< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-424" > < a href = "#DuckDB-424" > < span class = "linenos" > 424< / span > < / a > < span class = "k" > else< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB-425" > < a href = "#DuckDB-425" > < span class = "linenos" > 425< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-426" > < a href = "#DuckDB-426" > < span class = "linenos" > 426< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-427" > < a href = "#DuckDB-427" > < span class = "linenos" > 427< / span > < / a >
< / span > < span id = "DuckDB-428" > < a href = "#DuckDB-428" > < span class = "linenos" > 428< / span > < / a > < span class = "n" > TYPE_CONVERTERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-429" > < a href = "#DuckDB-429" > < span class = "linenos" > 429< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/data_types/numeric< / span >
< / span > < span id = "DuckDB-430" > < a href = "#DuckDB-430" > < span class = "linenos" > 430< / 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" > DECIMAL< / span > < span class = "p" > :< / span > < span class = "n" > build_default_decimal_type< / span > < span class = "p" > (< / span > < span class = "n" > precision< / span > < span class = "o" > =< / span > < span class = "mi" > 18< / span > < span class = "p" > ,< / span > < span class = "n" > scale< / span > < span class = "o" > =< / span > < span class = "mi" > 3< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-431" > < a href = "#DuckDB-431" > < span class = "linenos" > 431< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/data_types/text< / span >
< / span > < span id = "DuckDB-432" > < a href = "#DuckDB-432" > < span class = "linenos" > 432< / 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 = "k" > lambda< / span > < span class = "n" > dtype< / 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" > build< / span > < span class = "p" > (< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-433" > < a href = "#DuckDB-433" > < span class = "linenos" > 433< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-434" > < a href = "#DuckDB-434" > < span class = "linenos" > 434< / span > < / a >
< / span > < span id = "DuckDB-435" > < a href = "#DuckDB-435" > < span class = "linenos" > 435< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_table_sample< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > as_modifier< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > TableSample< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB-436" > < a href = "#DuckDB-436" > < span class = "linenos" > 436< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/samples.html< / span >
< / span > < span id = "DuckDB-437" > < a href = "#DuckDB-437" > < span class = "linenos" > 437< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _parse_table_sample< / span > < span class = "p" > (< / span > < span class = "n" > as_modifier< / span > < span class = "o" > =< / span > < span class = "n" > as_modifier< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-438" > < a href = "#DuckDB-438" > < span class = "linenos" > 438< / span > < / a > < span class = "k" > if< / span > < span class = "n" > sample< / span > < span class = "ow" > and< / span > < span class = "ow" > not< / span > < span class = "n" > sample< / 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" > " method" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-439" > < a href = "#DuckDB-439" > < span class = "linenos" > 439< / span > < / a > < span class = "k" > if< / span > < span class = "n" > sample< / 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" > " size" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-440" > < a href = "#DuckDB-440" > < span class = "linenos" > 440< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-441" > < a href = "#DuckDB-441" > < span class = "linenos" > 441< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-442" > < a href = "#DuckDB-442" > < span class = "linenos" > 442< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " SYSTEM" < / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-443" > < a href = "#DuckDB-443" > < span class = "linenos" > 443< / span > < / a >
< / span > < span id = "DuckDB-444" > < a href = "#DuckDB-444" > < span class = "linenos" > 444< / span > < / a > < span class = "k" > return< / span > < span class = "n" > sample< / span >
< / span > < span id = "DuckDB-445" > < a href = "#DuckDB-445" > < span class = "linenos" > 445< / span > < / a >
< / span > < span id = "DuckDB-446" > < a href = "#DuckDB-446" > < span class = "linenos" > 446< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_bracket< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-447" > < a href = "#DuckDB-447" > < span class = "linenos" > 447< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > this< / 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" > Expression< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB-448" > < a href = "#DuckDB-448" > < span class = "linenos" > 448< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB-449" > < a href = "#DuckDB-449" > < span class = "linenos" > 449< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _parse_bracket< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-450" > < a href = "#DuckDB-450" > < span class = "linenos" > 450< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > bracket< / 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 = "DuckDB-451" > < a href = "#DuckDB-451" > < span class = "linenos" > 451< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " returns_list_for_maps" < / span > < span class = "p" > ,< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-452" > < a href = "#DuckDB-452" > < span class = "linenos" > 452< / span > < / a >
< / span > < span id = "DuckDB-453" > < a href = "#DuckDB-453" > < span class = "linenos" > 453< / span > < / a > < span class = "k" > return< / span > < span class = "n" > bracket< / span >
< / span > < span id = "DuckDB-454" > < a href = "#DuckDB-454" > < span class = "linenos" > 454< / span > < / a >
< / span > < span id = "DuckDB-455" > < a href = "#DuckDB-455" > < span class = "linenos" > 455< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_map< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ToMap< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Map< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-456" > < a href = "#DuckDB-456" > < span class = "linenos" > 456< / span > < / a > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > L_BRACE< / span > < span class = "p" > ,< / span > < span class = "n" > advance< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-457" > < a href = "#DuckDB-457" > < span class = "linenos" > 457< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / 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" > ToMap< / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_bracket< / span > < span class = "p" > ())< / span >
< / span > < span id = "DuckDB-458" > < a href = "#DuckDB-458" > < span class = "linenos" > 458< / span > < / a >
< / span > < span id = "DuckDB-459" > < a href = "#DuckDB-459" > < span class = "linenos" > 459< / span > < / a > < span class = "n" > args< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_wrapped_csv< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_assignment< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-460" > < a href = "#DuckDB-460" > < span class = "linenos" > 460< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / 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" > Map< / span > < span class = "p" > ,< / span > < span class = "n" > keys< / 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" > values< / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-461" > < a href = "#DuckDB-461" > < span class = "linenos" > 461< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-462" > < a href = "#DuckDB-462" > < span class = "linenos" > 462< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_struct_types< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > type_required< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB-463" > < a href = "#DuckDB-463" > < span class = "linenos" > 463< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_field_def< / span > < span class = "p" > ()< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-464" > < a href = "#DuckDB-464" > < span class = "linenos" > 464< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-465" > < a href = "#DuckDB-465" > < span class = "linenos" > 465< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _pivot_column_names< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > aggregations< / 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 = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < 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 = "DuckDB-466" > < a href = "#DuckDB-466" > < span class = "linenos" > 466< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-467" > < a href = "#DuckDB-467" > < span class = "linenos" > 467< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _pivot_column_names< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-468" > < a href = "#DuckDB-468" > < span class = "linenos" > 468< / span > < / a > < span class = "k" > return< / span > < span class = "n" > pivot_column_names< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > ,< / span > < span class = "n" > dialect< / span > < span class = "o" > =< / span > < span class = "s2" > " duckdb" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-469" > < a href = "#DuckDB-469" > < span class = "linenos" > 469< / span > < / a >
< / span > < span id = "DuckDB-470" > < a href = "#DuckDB-470" > < span class = "linenos" > 470< / 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 = "DuckDB-471" > < a href = "#DuckDB-471" > < span class = "linenos" > 471< / span > < / a > < span class = "n" > PARAMETER_TOKEN< / span > < span class = "o" > =< / span > < span class = "s2" > " $" < / span >
< / span > < span id = "DuckDB-472" > < a href = "#DuckDB-472" > < span class = "linenos" > 472< / span > < / a > < span class = "n" > NAMED_PLACEHOLDER_TOKEN< / span > < span class = "o" > =< / span > < span class = "s2" > " $" < / span >
< / span > < span id = "DuckDB-473" > < a href = "#DuckDB-473" > < span class = "linenos" > 473< / span > < / a > < span class = "n" > JOIN_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-474" > < a href = "#DuckDB-474" > < span class = "linenos" > 474< / span > < / a > < span class = "n" > TABLE_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-475" > < a href = "#DuckDB-475" > < span class = "linenos" > 475< / span > < / a > < span class = "n" > QUERY_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-476" > < a href = "#DuckDB-476" > < span class = "linenos" > 476< / span > < / a > < span class = "n" > LIMIT_FETCH< / span > < span class = "o" > =< / span > < span class = "s2" > " LIMIT" < / span >
< / span > < span id = "DuckDB-477" > < a href = "#DuckDB-477" > < span class = "linenos" > 477< / 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 = "DuckDB-478" > < a href = "#DuckDB-478" > < span class = "linenos" > 478< / span > < / a > < span class = "n" > RENAME_TABLE_WITH_DB< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-479" > < a href = "#DuckDB-479" > < span class = "linenos" > 479< / span > < / a > < span class = "n" > NVL2_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-480" > < a href = "#DuckDB-480" > < span class = "linenos" > 480< / span > < / a > < span class = "n" > SEMI_ANTI_JOIN_WITH_SIDE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-481" > < a href = "#DuckDB-481" > < span class = "linenos" > 481< / span > < / a > < span class = "n" > TABLESAMPLE_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "s2" > " USING SAMPLE" < / span >
< / span > < span id = "DuckDB-482" > < a href = "#DuckDB-482" > < span class = "linenos" > 482< / span > < / a > < span class = "n" > TABLESAMPLE_SEED_KEYWORD< / span > < span class = "o" > =< / span > < span class = "s2" > " REPEATABLE" < / span >
< / span > < span id = "DuckDB-483" > < a href = "#DuckDB-483" > < span class = "linenos" > 483< / span > < / a > < span class = "n" > LAST_DAY_SUPPORTS_DATE_PART< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-484" > < a href = "#DuckDB-484" > < span class = "linenos" > 484< / span > < / a > < span class = "n" > JSON_KEY_VALUE_PAIR_SEP< / span > < span class = "o" > =< / span > < span class = "s2" > " ," < / span >
< / span > < span id = "DuckDB-485" > < a href = "#DuckDB-485" > < span class = "linenos" > 485< / span > < / a > < span class = "n" > IGNORE_NULLS_IN_FUNC< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-486" > < a href = "#DuckDB-486" > < span class = "linenos" > 486< / span > < / a > < span class = "n" > JSON_PATH_BRACKETED_KEY_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-487" > < a href = "#DuckDB-487" > < span class = "linenos" > 487< / span > < / a > < span class = "n" > SUPPORTS_CREATE_TABLE_LIKE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-488" > < a href = "#DuckDB-488" > < span class = "linenos" > 488< / span > < / a > < span class = "n" > MULTI_ARG_DISTINCT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-489" > < a href = "#DuckDB-489" > < span class = "linenos" > 489< / span > < / a > < span class = "n" > CAN_IMPLEMENT_ARRAY_ANY< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-490" > < a href = "#DuckDB-490" > < span class = "linenos" > 490< / span > < / a > < span class = "n" > SUPPORTS_TO_NUMBER< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-491" > < a href = "#DuckDB-491" > < span class = "linenos" > 491< / span > < / a > < span class = "n" > COPY_HAS_INTO_KEYWORD< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-492" > < a href = "#DuckDB-492" > < span class = "linenos" > 492< / span > < / a > < span class = "n" > STAR_EXCEPT< / span > < span class = "o" > =< / span > < span class = "s2" > " EXCLUDE" < / span >
< / span > < span id = "DuckDB-493" > < a href = "#DuckDB-493" > < span class = "linenos" > 493< / span > < / a > < span class = "n" > PAD_FILL_PATTERN_IS_REQUIRED< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB-494" > < a href = "#DuckDB-494" > < span class = "linenos" > 494< / span > < / a > < span class = "n" > ARRAY_CONCAT_IS_VAR_LEN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB-495" > < a href = "#DuckDB-495" > < span class = "linenos" > 495< / span > < / a >
< / span > < span id = "DuckDB-496" > < a href = "#DuckDB-496" > < span class = "linenos" > 496< / span > < / a > < span class = "n" > TRANSFORMS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-497" > < a href = "#DuckDB-497" > < span class = "linenos" > 497< / 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 = "DuckDB-498" > < a href = "#DuckDB-498" > < span class = "linenos" > 498< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxDistinct< / span > < span class = "p" > :< / span > < span class = "n" > approx_count_distinct_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-499" > < a href = "#DuckDB-499" > < span class = "linenos" > 499< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Array< / span > < span class = "p" > :< / span > < span class = "n" > inline_array_unless_query< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-500" > < a href = "#DuckDB-500" > < span class = "linenos" > 500< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayFilter< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_FILTER" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-501" > < a href = "#DuckDB-501" > < span class = "linenos" > 501< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySize< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_LENGTH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-502" > < a href = "#DuckDB-502" > < span class = "linenos" > 502< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMax< / span > < span class = "p" > :< / span > < span class = "n" > arg_max_or_min_no_count< / span > < span class = "p" > (< / span > < span class = "s2" > " ARG_MAX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-503" > < a href = "#DuckDB-503" > < span class = "linenos" > 503< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMin< / span > < span class = "p" > :< / span > < span class = "n" > arg_max_or_min_no_count< / span > < span class = "p" > (< / span > < span class = "s2" > " ARG_MIN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-504" > < a href = "#DuckDB-504" > < span class = "linenos" > 504< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySort< / span > < span class = "p" > :< / span > < span class = "n" > _array_sort_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-505" > < a href = "#DuckDB-505" > < span class = "linenos" > 505< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySum< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_SUM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-506" > < a href = "#DuckDB-506" > < span class = "linenos" > 506< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " XOR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-507" > < a href = "#DuckDB-507" > < span class = "linenos" > 507< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CommentColumnConstraint< / span > < span class = "p" > :< / span > < span class = "n" > no_comment_column_constraint_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-508" > < a href = "#DuckDB-508" > < span class = "linenos" > 508< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentDate< / 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_DATE" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-509" > < a href = "#DuckDB-509" > < span class = "linenos" > 509< / 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 = "DuckDB-510" > < a href = "#DuckDB-510" > < span class = "linenos" > 510< / 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 = "DuckDB-511" > < a href = "#DuckDB-511" > < span class = "linenos" > 511< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfMonth< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFMONTH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-512" > < a href = "#DuckDB-512" > < span class = "linenos" > 512< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeek< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFWEEK" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-513" > < a href = "#DuckDB-513" > < span class = "linenos" > 513< / 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" > " ISODOW" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-514" > < a href = "#DuckDB-514" > < span class = "linenos" > 514< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfYear< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFYEAR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-515" > < a href = "#DuckDB-515" > < span class = "linenos" > 515< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "p" > :< / span > < span class = "n" > _datatype_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-516" > < a href = "#DuckDB-516" > < span class = "linenos" > 516< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Date< / span > < span class = "p" > :< / span > < span class = "n" > _date_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-517" > < a href = "#DuckDB-517" > < span class = "linenos" > 517< / 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 > < span id = "DuckDB-518" > < a href = "#DuckDB-518" > < span class = "linenos" > 518< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateFromParts< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_DATE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-519" > < a href = "#DuckDB-519" > < span class = "linenos" > 519< / 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 > < span id = "DuckDB-520" > < a href = "#DuckDB-520" > < span class = "linenos" > 520< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > :< / span > < span class = "n" > _date_diff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-521" > < a href = "#DuckDB-521" > < span class = "linenos" > 521< / 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 = "DuckDB-522" > < a href = "#DuckDB-522" > < span class = "linenos" > 522< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Datetime< / span > < span class = "p" > :< / span > < span class = "n" > no_datetime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-523" > < a href = "#DuckDB-523" > < span class = "linenos" > 523< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeSub< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-524" > < a href = "#DuckDB-524" > < span class = "linenos" > 524< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-525" > < a href = "#DuckDB-525" > < span class = "linenos" > 525< / 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 = "DuckDB-526" > < a href = "#DuckDB-526" > < span class = "linenos" > 526< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(STRFTIME(< / 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" > DuckDB< / 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 = "DuckDB-527" > < a href = "#DuckDB-527" > < span class = "linenos" > 527< / 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" > " DECODE" < / span > < span class = "p" > ,< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-528" > < a href = "#DuckDB-528" > < span class = "linenos" > 528< / 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 = "DuckDB-529" > < a href = "#DuckDB-529" > < span class = "linenos" > 529< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(STRPTIME(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 TEXT), < / span > < span class = "si" > {< / span > < span class = "n" > DuckDB< / 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 = "DuckDB-530" > < a href = "#DuckDB-530" > < span class = "linenos" > 530< / 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" > " ENCODE" < / span > < span class = "p" > ,< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-531" > < a href = "#DuckDB-531" > < span class = "linenos" > 531< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateDateArray< / span > < span class = "p" > :< / span > < span class = "n" > _generate_datetime_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-532" > < a href = "#DuckDB-532" > < span class = "linenos" > 532< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateTimestampArray< / span > < span class = "p" > :< / span > < span class = "n" > _generate_datetime_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-533" > < a href = "#DuckDB-533" > < span class = "linenos" > 533< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Explode< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " UNNEST" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-534" > < a href = "#DuckDB-534" > < span class = "linenos" > 534< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IntDiv< / 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" > binary< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " //" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-535" > < a href = "#DuckDB-535" > < span class = "linenos" > 535< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IsInf< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ISINF" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-536" > < a href = "#DuckDB-536" > < span class = "linenos" > 536< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IsNan< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ISNAN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-537" > < a href = "#DuckDB-537" > < span class = "linenos" > 537< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONBExists< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " JSON_EXISTS" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-538" > < a href = "#DuckDB-538" > < span class = "linenos" > 538< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > :< / span > < span class = "n" > _arrow_json_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-539" > < a href = "#DuckDB-539" > < span class = "linenos" > 539< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtractScalar< / span > < span class = "p" > :< / span > < span class = "n" > _arrow_json_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-540" > < a href = "#DuckDB-540" > < span class = "linenos" > 540< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONFormat< / span > < span class = "p" > :< / span > < span class = "n" > _json_format_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-541" > < a href = "#DuckDB-541" > < span class = "linenos" > 541< / 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 = "DuckDB-542" > < a href = "#DuckDB-542" > < span class = "linenos" > 542< / 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 = "DuckDB-543" > < a href = "#DuckDB-543" > < span class = "linenos" > 543< / 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 = "DuckDB-544" > < a href = "#DuckDB-544" > < span class = "linenos" > 544< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / 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" > " UNHEX" < / 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 = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )),< / span >
< / span > < span id = "DuckDB-545" > < a href = "#DuckDB-545" > < span class = "linenos" > 545< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MonthsBetween< / 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 = "DuckDB-546" > < a href = "#DuckDB-546" > < span class = "linenos" > 546< / span > < / a > < span class = "s2" > " DATEDIFF" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-547" > < a href = "#DuckDB-547" > < span class = "linenos" > 547< / span > < / a > < span class = "s2" > " ' month' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-548" > < a href = "#DuckDB-548" > < span class = "linenos" > 548< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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" > copy< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-549" > < a href = "#DuckDB-549" > < span class = "linenos" > 549< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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" > copy< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-550" > < a href = "#DuckDB-550" > < span class = "linenos" > 550< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-551" > < a href = "#DuckDB-551" > < span class = "linenos" > 551< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileCont< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " QUANTILE_CONT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-552" > < a href = "#DuckDB-552" > < span class = "linenos" > 552< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileDisc< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " QUANTILE_DISC" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-553" > < a href = "#DuckDB-553" > < span class = "linenos" > 553< / span > < / a > < span class = "c1" > # DuckDB doesn' t allow qualified columns inside of PIVOT expressions.< / span >
< / span > < span id = "DuckDB-554" > < a href = "#DuckDB-554" > < span class = "linenos" > 554< / span > < / a > < span class = "c1" > # See: https://github.com/duckdb/duckdb/blob/671faf92411182f81dce42ac43de8bfb05d9909e/src/planner/binder/tableref/bind_pivot.cpp#L61-L62< / span >
< / span > < span id = "DuckDB-555" > < a href = "#DuckDB-555" > < span class = "linenos" > 555< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pivot< / 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" > unqualify_columns< / span > < span class = "p" > ]),< / span >
< / span > < span id = "DuckDB-556" > < a href = "#DuckDB-556" > < span class = "linenos" > 556< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpReplace< / 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 = "DuckDB-557" > < a href = "#DuckDB-557" > < span class = "linenos" > 557< / span > < / a > < span class = "s2" > " REGEXP_REPLACE" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-558" > < a href = "#DuckDB-558" > < span class = "linenos" > 558< / span > < / a > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-559" > < a href = "#DuckDB-559" > < span class = "linenos" > 559< / span > < / a > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-560" > < a href = "#DuckDB-560" > < span class = "linenos" > 560< / span > < / a > < span class = "n" > e< / 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" > " replacement" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-561" > < a href = "#DuckDB-561" > < span class = "linenos" > 561< / span > < / a > < span class = "n" > e< / 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" > " modifiers" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-562" > < a href = "#DuckDB-562" > < span class = "linenos" > 562< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-563" > < a href = "#DuckDB-563" > < span class = "linenos" > 563< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " REGEXP_MATCHES" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-564" > < a href = "#DuckDB-564" > < span class = "linenos" > 564< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " STR_SPLIT_REGEX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-565" > < a href = "#DuckDB-565" > < span class = "linenos" > 565< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Return< / 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" > sql< / 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 = "DuckDB-566" > < a href = "#DuckDB-566" > < span class = "linenos" > 566< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ReturnsProperty< / 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 = "s2" > " TABLE" < / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > )< / span > < span class = "k" > else< / span > < span class = "s2" > " " < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-567" > < a href = "#DuckDB-567" > < span class = "linenos" > 567< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Rand< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " RANDOM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-568" > < a href = "#DuckDB-568" > < span class = "linenos" > 568< / 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 = "DuckDB-569" > < a href = "#DuckDB-569" > < span class = "linenos" > 569< / 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 = "DuckDB-570" > < a href = "#DuckDB-570" > < span class = "linenos" > 570< / 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 = "DuckDB-571" > < a href = "#DuckDB-571" > < span class = "linenos" > 571< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " STR_SPLIT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-572" > < a href = "#DuckDB-572" > < span class = "linenos" > 572< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "p" > :< / span > < span class = "n" > _sort_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-573" > < a href = "#DuckDB-573" > < span class = "linenos" > 573< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > :< / span > < span class = "n" > str_position_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-574" > < a href = "#DuckDB-574" > < span class = "linenos" > 574< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToUnix< / 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 = "DuckDB-575" > < a href = "#DuckDB-575" > < span class = "linenos" > 575< / span > < / a > < span class = "s2" > " EPOCH" < / 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" > " STRPTIME" < / 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 = "DuckDB-576" > < a href = "#DuckDB-576" > < span class = "linenos" > 576< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-577" > < a href = "#DuckDB-577" > < span class = "linenos" > 577< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "p" > :< / span > < span class = "n" > _struct_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-578" > < a href = "#DuckDB-578" > < span class = "linenos" > 578< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Transform< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_TRANSFORM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-579" > < a href = "#DuckDB-579" > < span class = "linenos" > 579< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-580" > < a href = "#DuckDB-580" > < span class = "linenos" > 580< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Time< / span > < span class = "p" > :< / span > < span class = "n" > no_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-581" > < a href = "#DuckDB-581" > < span class = "linenos" > 581< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeDiff< / span > < span class = "p" > :< / span > < span class = "n" > _timediff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-582" > < a href = "#DuckDB-582" > < span class = "linenos" > 582< / 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 = "DuckDB-583" > < a href = "#DuckDB-583" > < span class = "linenos" > 583< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampDiff< / 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 = "DuckDB-584" > < a href = "#DuckDB-584" > < span class = "linenos" > 584< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / 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 = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > unit< / 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 = "DuckDB-585" > < a href = "#DuckDB-585" > < span class = "linenos" > 585< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-586" > < a href = "#DuckDB-586" > < span class = "linenos" > 586< / 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 = "DuckDB-587" > < a href = "#DuckDB-587" > < span class = "linenos" > 587< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToDate< / 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" > 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" > e< / 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" > DATE< / span > < span class = "p" > )),< / span >
< / span > < span id = "DuckDB-588" > < a href = "#DuckDB-588" > < span class = "linenos" > 588< / 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 = "DuckDB-589" > < a href = "#DuckDB-589" > < span class = "linenos" > 589< / 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 = "DuckDB-590" > < a href = "#DuckDB-590" > < span class = "linenos" > 590< / span > < / a > < span class = "s2" > " EPOCH" < / 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" > e< / 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 = "DuckDB-591" > < a href = "#DuckDB-591" > < span class = "linenos" > 591< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-592" > < a href = "#DuckDB-592" > < span class = "linenos" > 592< / 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" > " STRFTIME" < / 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 = "DuckDB-593" > < a href = "#DuckDB-593" > < span class = "linenos" > 593< / 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" > " EPOCH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-594" > < a href = "#DuckDB-594" > < span class = "linenos" > 594< / 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 = "DuckDB-595" > < a href = "#DuckDB-595" > < span class = "linenos" > 595< / 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 TEXT), ' -' , ' ' ), 1, 8) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-596" > < a href = "#DuckDB-596" > < span class = "linenos" > 596< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-597" > < a href = "#DuckDB-597" > < span class = "linenos" > 597< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsDiff< / 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 = "DuckDB-598" > < a href = "#DuckDB-598" > < span class = "linenos" > 598< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-599" > < a href = "#DuckDB-599" > < span class = "linenos" > 599< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " ' < / span > < span class = "si" > {< / span > < span class = "n" > e< / 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 = "s1" > ' unit' < / span > < span class = "p" > )< / span > < span class = "w" > < / span > < span class = "ow" > or< / span > < span class = "w" > < / span > < span class = "s1" > ' DAY' < / span > < span class = "si" > }< / span > < span class = "s2" > ' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-600" > < a href = "#DuckDB-600" > < span class = "linenos" > 600< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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 = "DuckDB-601" > < a href = "#DuckDB-601" > < span class = "linenos" > 601< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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 = "DuckDB-602" > < a href = "#DuckDB-602" > < span class = "linenos" > 602< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-603" > < a href = "#DuckDB-603" > < span class = "linenos" > 603< / 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 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 = "DuckDB-604" > < a href = "#DuckDB-604" > < span class = "linenos" > 604< / span > < / a > < span class = "s2" > " STRFTIME" < / 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_TIMESTAMP" < / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-605" > < a href = "#DuckDB-605" > < span class = "linenos" > 605< / span > < / a > < span class = "p" > ),< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-606" > < a href = "#DuckDB-606" > < span class = "linenos" > 606< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeTrunc< / 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 = "DuckDB-607" > < a href = "#DuckDB-607" > < span class = "linenos" > 607< / span > < / a > < span class = "s2" > " DATE_TRUNC" < / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-608" > < a href = "#DuckDB-608" > < span class = "linenos" > 608< / span > < / a > < span class = "p" > ),< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-609" > < a href = "#DuckDB-609" > < span class = "linenos" > 609< / 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 = "DuckDB-610" > < a href = "#DuckDB-610" > < span class = "linenos" > 610< / 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 class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(TO_TIMESTAMP(< / 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 TEXT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-611" > < a href = "#DuckDB-611" > < span class = "linenos" > 611< / 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 = "DuckDB-612" > < a href = "#DuckDB-612" > < span class = "linenos" > 612< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > WeekOfYear< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " WEEKOFYEAR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB-613" > < a href = "#DuckDB-613" > < span class = "linenos" > 613< / 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 = "DuckDB-614" > < a href = "#DuckDB-614" > < span class = "linenos" > 614< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-615" > < a href = "#DuckDB-615" > < span class = "linenos" > 615< / span > < / a >
< / span > < span id = "DuckDB-616" > < a href = "#DuckDB-616" > < span class = "linenos" > 616< / span > < / a > < span class = "n" > SUPPORTED_JSON_PATH_PARTS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-617" > < a href = "#DuckDB-617" > < span class = "linenos" > 617< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathKey< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-618" > < a href = "#DuckDB-618" > < span class = "linenos" > 618< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathRoot< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-619" > < a href = "#DuckDB-619" > < span class = "linenos" > 619< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathSubscript< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-620" > < a href = "#DuckDB-620" > < span class = "linenos" > 620< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathWildcard< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-621" > < a href = "#DuckDB-621" > < span class = "linenos" > 621< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-622" > < a href = "#DuckDB-622" > < span class = "linenos" > 622< / span > < / a >
< / span > < span id = "DuckDB-623" > < a href = "#DuckDB-623" > < span class = "linenos" > 623< / span > < / a > < span class = "n" > TYPE_MAPPING< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-624" > < a href = "#DuckDB-624" > < span class = "linenos" > 624< / 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 = "DuckDB-625" > < a href = "#DuckDB-625" > < span class = "linenos" > 625< / 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" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-626" > < a href = "#DuckDB-626" > < span class = "linenos" > 626< / 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" > BPCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-627" > < a href = "#DuckDB-627" > < span class = "linenos" > 627< / 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" > CHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-628" > < a href = "#DuckDB-628" > < span class = "linenos" > 628< / 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 = "DuckDB-629" > < a href = "#DuckDB-629" > < span class = "linenos" > 629< / 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" > NCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-630" > < a href = "#DuckDB-630" > < span class = "linenos" > 630< / 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" > NVARCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-631" > < a href = "#DuckDB-631" > < span class = "linenos" > 631< / 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" > UINT< / span > < span class = "p" > :< / span > < span class = "s2" > " UINTEGER" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-632" > < a href = "#DuckDB-632" > < span class = "linenos" > 632< / 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" > VARBINARY< / span > < span class = "p" > :< / span > < span class = "s2" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-633" > < a href = "#DuckDB-633" > < span class = "linenos" > 633< / 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" > ROWVERSION< / span > < span class = "p" > :< / span > < span class = "s2" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-634" > < a href = "#DuckDB-634" > < span class = "linenos" > 634< / 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" > VARCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-635" > < a href = "#DuckDB-635" > < span class = "linenos" > 635< / 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 = "DuckDB-636" > < a href = "#DuckDB-636" > < span class = "linenos" > 636< / 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" > TIMESTAMP_S< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_S" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-637" > < a href = "#DuckDB-637" > < span class = "linenos" > 637< / 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" > TIMESTAMP_MS< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_MS" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-638" > < a href = "#DuckDB-638" > < span class = "linenos" > 638< / 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" > TIMESTAMP_NS< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_NS" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-639" > < a href = "#DuckDB-639" > < span class = "linenos" > 639< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-640" > < a href = "#DuckDB-640" > < span class = "linenos" > 640< / span > < / a >
< / span > < span id = "DuckDB-641" > < a href = "#DuckDB-641" > < span class = "linenos" > 641< / span > < / a > < span class = "c1" > # https://github.com/duckdb/duckdb/blob/ff7f24fd8e3128d94371827523dae85ebaf58713/third_party/libpg_query/grammar/keywords/reserved_keywords.list#L1-L77< / span >
< / span > < span id = "DuckDB-642" > < a href = "#DuckDB-642" > < span class = "linenos" > 642< / span > < / a > < span class = "n" > RESERVED_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-643" > < a href = "#DuckDB-643" > < span class = "linenos" > 643< / span > < / a > < span class = "s2" > " array" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-644" > < a href = "#DuckDB-644" > < span class = "linenos" > 644< / span > < / a > < span class = "s2" > " analyse" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-645" > < a href = "#DuckDB-645" > < span class = "linenos" > 645< / span > < / a > < span class = "s2" > " union" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-646" > < a href = "#DuckDB-646" > < span class = "linenos" > 646< / span > < / a > < span class = "s2" > " all" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-647" > < a href = "#DuckDB-647" > < span class = "linenos" > 647< / span > < / a > < span class = "s2" > " when" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-648" > < a href = "#DuckDB-648" > < span class = "linenos" > 648< / span > < / a > < span class = "s2" > " in_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-649" > < a href = "#DuckDB-649" > < span class = "linenos" > 649< / span > < / a > < span class = "s2" > " default" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-650" > < a href = "#DuckDB-650" > < span class = "linenos" > 650< / span > < / a > < span class = "s2" > " create_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-651" > < a href = "#DuckDB-651" > < span class = "linenos" > 651< / span > < / a > < span class = "s2" > " window" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-652" > < a href = "#DuckDB-652" > < span class = "linenos" > 652< / span > < / a > < span class = "s2" > " asymmetric" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-653" > < a href = "#DuckDB-653" > < span class = "linenos" > 653< / span > < / a > < span class = "s2" > " to" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-654" > < a href = "#DuckDB-654" > < span class = "linenos" > 654< / span > < / a > < span class = "s2" > " else" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-655" > < a href = "#DuckDB-655" > < span class = "linenos" > 655< / span > < / a > < span class = "s2" > " localtime" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-656" > < a href = "#DuckDB-656" > < span class = "linenos" > 656< / span > < / a > < span class = "s2" > " from" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-657" > < a href = "#DuckDB-657" > < span class = "linenos" > 657< / span > < / a > < span class = "s2" > " end_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-658" > < a href = "#DuckDB-658" > < span class = "linenos" > 658< / span > < / a > < span class = "s2" > " select" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-659" > < a href = "#DuckDB-659" > < span class = "linenos" > 659< / span > < / a > < span class = "s2" > " current_date" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-660" > < a href = "#DuckDB-660" > < span class = "linenos" > 660< / span > < / a > < span class = "s2" > " foreign" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-661" > < a href = "#DuckDB-661" > < span class = "linenos" > 661< / span > < / a > < span class = "s2" > " with" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-662" > < a href = "#DuckDB-662" > < span class = "linenos" > 662< / span > < / a > < span class = "s2" > " grant" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-663" > < a href = "#DuckDB-663" > < span class = "linenos" > 663< / span > < / a > < span class = "s2" > " session_user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-664" > < a href = "#DuckDB-664" > < span class = "linenos" > 664< / span > < / a > < span class = "s2" > " or" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-665" > < a href = "#DuckDB-665" > < span class = "linenos" > 665< / span > < / a > < span class = "s2" > " except" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-666" > < a href = "#DuckDB-666" > < span class = "linenos" > 666< / span > < / a > < span class = "s2" > " references" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-667" > < a href = "#DuckDB-667" > < span class = "linenos" > 667< / span > < / a > < span class = "s2" > " fetch" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-668" > < a href = "#DuckDB-668" > < span class = "linenos" > 668< / span > < / a > < span class = "s2" > " limit" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-669" > < a href = "#DuckDB-669" > < span class = "linenos" > 669< / span > < / a > < span class = "s2" > " group_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-670" > < a href = "#DuckDB-670" > < span class = "linenos" > 670< / span > < / a > < span class = "s2" > " leading" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-671" > < a href = "#DuckDB-671" > < span class = "linenos" > 671< / span > < / a > < span class = "s2" > " into" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-672" > < a href = "#DuckDB-672" > < span class = "linenos" > 672< / span > < / a > < span class = "s2" > " collate" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-673" > < a href = "#DuckDB-673" > < span class = "linenos" > 673< / span > < / a > < span class = "s2" > " offset" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-674" > < a href = "#DuckDB-674" > < span class = "linenos" > 674< / span > < / a > < span class = "s2" > " do" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-675" > < a href = "#DuckDB-675" > < span class = "linenos" > 675< / span > < / a > < span class = "s2" > " then" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-676" > < a href = "#DuckDB-676" > < span class = "linenos" > 676< / span > < / a > < span class = "s2" > " localtimestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-677" > < a href = "#DuckDB-677" > < span class = "linenos" > 677< / span > < / a > < span class = "s2" > " check_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-678" > < a href = "#DuckDB-678" > < span class = "linenos" > 678< / span > < / a > < span class = "s2" > " lateral_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-679" > < a href = "#DuckDB-679" > < span class = "linenos" > 679< / span > < / a > < span class = "s2" > " current_role" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-680" > < a href = "#DuckDB-680" > < span class = "linenos" > 680< / span > < / a > < span class = "s2" > " where" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-681" > < a href = "#DuckDB-681" > < span class = "linenos" > 681< / span > < / a > < span class = "s2" > " asc_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-682" > < a href = "#DuckDB-682" > < span class = "linenos" > 682< / span > < / a > < span class = "s2" > " placing" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-683" > < a href = "#DuckDB-683" > < span class = "linenos" > 683< / span > < / a > < span class = "s2" > " desc_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-684" > < a href = "#DuckDB-684" > < span class = "linenos" > 684< / span > < / a > < span class = "s2" > " user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-685" > < a href = "#DuckDB-685" > < span class = "linenos" > 685< / span > < / a > < span class = "s2" > " unique" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-686" > < a href = "#DuckDB-686" > < span class = "linenos" > 686< / span > < / a > < span class = "s2" > " initially" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-687" > < a href = "#DuckDB-687" > < span class = "linenos" > 687< / span > < / a > < span class = "s2" > " column" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-688" > < a href = "#DuckDB-688" > < span class = "linenos" > 688< / span > < / a > < span class = "s2" > " both" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-689" > < a href = "#DuckDB-689" > < span class = "linenos" > 689< / span > < / a > < span class = "s2" > " some" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-690" > < a href = "#DuckDB-690" > < span class = "linenos" > 690< / span > < / a > < span class = "s2" > " as" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-691" > < a href = "#DuckDB-691" > < span class = "linenos" > 691< / span > < / a > < span class = "s2" > " any" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-692" > < a href = "#DuckDB-692" > < span class = "linenos" > 692< / span > < / a > < span class = "s2" > " only" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-693" > < a href = "#DuckDB-693" > < span class = "linenos" > 693< / span > < / a > < span class = "s2" > " deferrable" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-694" > < a href = "#DuckDB-694" > < span class = "linenos" > 694< / span > < / a > < span class = "s2" > " null_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-695" > < a href = "#DuckDB-695" > < span class = "linenos" > 695< / span > < / a > < span class = "s2" > " current_time" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-696" > < a href = "#DuckDB-696" > < span class = "linenos" > 696< / span > < / a > < span class = "s2" > " true_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-697" > < a href = "#DuckDB-697" > < span class = "linenos" > 697< / span > < / a > < span class = "s2" > " table" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-698" > < a href = "#DuckDB-698" > < span class = "linenos" > 698< / span > < / a > < span class = "s2" > " case" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-699" > < a href = "#DuckDB-699" > < span class = "linenos" > 699< / span > < / a > < span class = "s2" > " trailing" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-700" > < a href = "#DuckDB-700" > < span class = "linenos" > 700< / span > < / a > < span class = "s2" > " variadic" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-701" > < a href = "#DuckDB-701" > < span class = "linenos" > 701< / span > < / a > < span class = "s2" > " for" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-702" > < a href = "#DuckDB-702" > < span class = "linenos" > 702< / span > < / a > < span class = "s2" > " on" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-703" > < a href = "#DuckDB-703" > < span class = "linenos" > 703< / span > < / a > < span class = "s2" > " distinct" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-704" > < a href = "#DuckDB-704" > < span class = "linenos" > 704< / span > < / a > < span class = "s2" > " false_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-705" > < a href = "#DuckDB-705" > < span class = "linenos" > 705< / span > < / a > < span class = "s2" > " not" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-706" > < a href = "#DuckDB-706" > < span class = "linenos" > 706< / span > < / a > < span class = "s2" > " constraint" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-707" > < a href = "#DuckDB-707" > < span class = "linenos" > 707< / span > < / a > < span class = "s2" > " current_timestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-708" > < a href = "#DuckDB-708" > < span class = "linenos" > 708< / span > < / a > < span class = "s2" > " returning" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-709" > < a href = "#DuckDB-709" > < span class = "linenos" > 709< / span > < / a > < span class = "s2" > " primary" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-710" > < a href = "#DuckDB-710" > < span class = "linenos" > 710< / span > < / a > < span class = "s2" > " intersect" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-711" > < a href = "#DuckDB-711" > < span class = "linenos" > 711< / span > < / a > < span class = "s2" > " having" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-712" > < a href = "#DuckDB-712" > < span class = "linenos" > 712< / span > < / a > < span class = "s2" > " analyze" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-713" > < a href = "#DuckDB-713" > < span class = "linenos" > 713< / span > < / a > < span class = "s2" > " current_user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-714" > < a href = "#DuckDB-714" > < span class = "linenos" > 714< / span > < / a > < span class = "s2" > " and" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-715" > < a href = "#DuckDB-715" > < span class = "linenos" > 715< / span > < / a > < span class = "s2" > " cast" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-716" > < a href = "#DuckDB-716" > < span class = "linenos" > 716< / span > < / a > < span class = "s2" > " symmetric" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-717" > < a href = "#DuckDB-717" > < span class = "linenos" > 717< / span > < / a > < span class = "s2" > " using" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-718" > < a href = "#DuckDB-718" > < span class = "linenos" > 718< / span > < / a > < span class = "s2" > " order" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-719" > < a href = "#DuckDB-719" > < span class = "linenos" > 719< / span > < / a > < span class = "s2" > " current_catalog" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-720" > < a href = "#DuckDB-720" > < span class = "linenos" > 720< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-721" > < a href = "#DuckDB-721" > < span class = "linenos" > 721< / span > < / a >
< / span > < span id = "DuckDB-722" > < a href = "#DuckDB-722" > < span class = "linenos" > 722< / span > < / a > < span class = "n" > UNWRAPPED_INTERVAL_VALUES< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Paren< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-723" > < a href = "#DuckDB-723" > < span class = "linenos" > 723< / span > < / a >
< / span > < span id = "DuckDB-724" > < a href = "#DuckDB-724" > < span class = "linenos" > 724< / span > < / a > < span class = "c1" > # DuckDB doesn' t generally support CREATE TABLE .. properties< / span >
< / span > < span id = "DuckDB-725" > < a href = "#DuckDB-725" > < span class = "linenos" > 725< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/statements/create_table.html< / span >
< / span > < span id = "DuckDB-726" > < a href = "#DuckDB-726" > < span class = "linenos" > 726< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB-727" > < a href = "#DuckDB-727" > < span class = "linenos" > 727< / span > < / a > < span class = "n" > prop< / 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 > < span id = "DuckDB-728" > < a href = "#DuckDB-728" > < span class = "linenos" > 728< / span > < / a > < span class = "k" > for< / span > < span class = "n" > prop< / span > < span class = "ow" > in< / 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 > < span id = "DuckDB-729" > < a href = "#DuckDB-729" > < span class = "linenos" > 729< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB-730" > < a href = "#DuckDB-730" > < span class = "linenos" > 730< / span > < / a >
< / span > < span id = "DuckDB-731" > < a href = "#DuckDB-731" > < span class = "linenos" > 731< / span > < / a > < span class = "c1" > # There are a few exceptions (e.g. temporary tables) which are supported or< / span >
< / span > < span id = "DuckDB-732" > < a href = "#DuckDB-732" > < span class = "linenos" > 732< / span > < / a > < span class = "c1" > # can be transpiled to DuckDB, so we explicitly override them accordingly< / span >
< / span > < span id = "DuckDB-733" > < a href = "#DuckDB-733" > < span class = "linenos" > 733< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LikeProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_SCHEMA< / span >
< / span > < span id = "DuckDB-734" > < a href = "#DuckDB-734" > < span class = "linenos" > 734< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TemporaryProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_CREATE< / span >
< / span > < span id = "DuckDB-735" > < a href = "#DuckDB-735" > < span class = "linenos" > 735< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ReturnsProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_ALIAS< / span >
< / span > < span id = "DuckDB-736" > < a href = "#DuckDB-736" > < span class = "linenos" > 736< / span > < / a >
< / span > < span id = "DuckDB-737" > < a href = "#DuckDB-737" > < span class = "linenos" > 737< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > fromiso8601timestamp_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" > FromISO8601Timestamp< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-738" > < a href = "#DuckDB-738" > < span class = "linenos" > 738< / 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" > 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" > TIMESTAMPTZ< / span > < span class = "p" > ))< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-739" > < a href = "#DuckDB-739" > < span class = "linenos" > 739< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-740" > < a href = "#DuckDB-740" > < span class = "linenos" > 740< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtotime_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" > StrToTime< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-741" > < a href = "#DuckDB-741" > < span class = "linenos" > 741< / 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 = "DuckDB-742" > < a href = "#DuckDB-742" > < span class = "linenos" > 742< / span > < / a > < span class = "n" > formatted_time< / 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 = "DuckDB-743" > < a href = "#DuckDB-743" > < span class = "linenos" > 743< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS TIMESTAMP)" < / span >
< / span > < span id = "DuckDB-744" > < a href = "#DuckDB-744" > < span class = "linenos" > 744< / span > < / a > < span class = "k" > return< / 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 > < span id = "DuckDB-745" > < a href = "#DuckDB-745" > < span class = "linenos" > 745< / span > < / a >
< / span > < span id = "DuckDB-746" > < a href = "#DuckDB-746" > < span class = "linenos" > 746< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtodate_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" > StrToDate< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-747" > < a href = "#DuckDB-747" > < span class = "linenos" > 747< / 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 = "DuckDB-748" > < a href = "#DuckDB-748" > < span class = "linenos" > 748< / span > < / a > < span class = "n" > formatted_time< / 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 = "DuckDB-749" > < a href = "#DuckDB-749" > < span class = "linenos" > 749< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
< / span > < span id = "DuckDB-750" > < a href = "#DuckDB-750" > < span class = "linenos" > 750< / span > < / a > < span class = "k" > return< / 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" > expression< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
< / span > < span id = "DuckDB-751" > < a href = "#DuckDB-751" > < span class = "linenos" > 751< / span > < / a >
< / span > < span id = "DuckDB-752" > < a href = "#DuckDB-752" > < span class = "linenos" > 752< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > parsejson_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" > ParseJSON< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-753" > < a href = "#DuckDB-753" > < span class = "linenos" > 753< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "DuckDB-754" > < a href = "#DuckDB-754" > < span class = "linenos" > 754< / 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 = "DuckDB-755" > < a href = "#DuckDB-755" > < span class = "linenos" > 755< / 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" > case< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > when< / 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 = "s2" > " json_valid" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ),< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > else_< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > null< / span > < span class = "p" > ()))< / span >
< / span > < span id = "DuckDB-756" > < a href = "#DuckDB-756" > < span class = "linenos" > 756< / 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" > " JSON" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-757" > < a href = "#DuckDB-757" > < span class = "linenos" > 757< / span > < / a >
< / span > < span id = "DuckDB-758" > < a href = "#DuckDB-758" > < span class = "linenos" > 758< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timefromparts_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" > TimeFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-759" > < a href = "#DuckDB-759" > < span class = "linenos" > 759< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-760" > < a href = "#DuckDB-760" > < span class = "linenos" > 760< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-761" > < a href = "#DuckDB-761" > < span class = "linenos" > 761< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-762" > < a href = "#DuckDB-762" > < span class = "linenos" > 762< / span > < / a > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ]< / span > < span class = "o" > +< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-763" > < a href = "#DuckDB-763" > < span class = "linenos" > 763< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-764" > < a href = "#DuckDB-764" > < span class = "linenos" > 764< / span > < / a >
< / span > < span id = "DuckDB-765" > < a href = "#DuckDB-765" > < span class = "linenos" > 765< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIME" < / 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 = "DuckDB-766" > < a href = "#DuckDB-766" > < span class = "linenos" > 766< / span > < / a >
< / span > < span id = "DuckDB-767" > < a href = "#DuckDB-767" > < span class = "linenos" > 767< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timestampfromparts_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" > TimestampFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-768" > < a href = "#DuckDB-768" > < span class = "linenos" > 768< / span > < / a > < span class = "n" > sec< / 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" > " sec" < / span > < span class = "p" > ]< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-769" > < a href = "#DuckDB-769" > < span class = "linenos" > 769< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-770" > < a href = "#DuckDB-770" > < span class = "linenos" > 770< / span > < / a > < span class = "n" > milli< / 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" > " milli" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-771" > < a href = "#DuckDB-771" > < span class = "linenos" > 771< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-772" > < a href = "#DuckDB-772" > < span class = "linenos" > 772< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > milli< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-773" > < a href = "#DuckDB-773" > < span class = "linenos" > 773< / span > < / a >
< / span > < span id = "DuckDB-774" > < a href = "#DuckDB-774" > < span class = "linenos" > 774< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-775" > < a href = "#DuckDB-775" > < span class = "linenos" > 775< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-776" > < a href = "#DuckDB-776" > < span class = "linenos" > 776< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-777" > < a href = "#DuckDB-777" > < span class = "linenos" > 777< / span > < / a >
< / span > < span id = "DuckDB-778" > < a href = "#DuckDB-778" > < span class = "linenos" > 778< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > or< / span > < span class = "n" > nano< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-779" > < a href = "#DuckDB-779" > < span class = "linenos" > 779< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > sec< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-780" > < a href = "#DuckDB-780" > < span class = "linenos" > 780< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-781" > < a href = "#DuckDB-781" > < span class = "linenos" > 781< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIMESTAMP" < / 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 = "DuckDB-782" > < a href = "#DuckDB-782" > < span class = "linenos" > 782< / span > < / a >
< / span > < span id = "DuckDB-783" > < a href = "#DuckDB-783" > < span class = "linenos" > 783< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > tablesample_sql< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-784" > < a href = "#DuckDB-784" > < span class = "linenos" > 784< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-785" > < a href = "#DuckDB-785" > < span class = "linenos" > 785< / span > < / a > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableSample< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-786" > < a href = "#DuckDB-786" > < span class = "linenos" > 786< / span > < / a > < span class = "n" > tablesample_keyword< / 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" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB-787" > < a href = "#DuckDB-787" > < span class = "linenos" > 787< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-788" > < a href = "#DuckDB-788" > < span class = "linenos" > 788< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / 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" > Select< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-789" > < a href = "#DuckDB-789" > < span class = "linenos" > 789< / span > < / a > < span class = "c1" > # This sample clause only applies to a single source, not the entire resulting relation< / span >
< / span > < span id = "DuckDB-790" > < a href = "#DuckDB-790" > < span class = "linenos" > 790< / span > < / a > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "s2" > " TABLESAMPLE" < / span >
< / span > < span id = "DuckDB-791" > < a href = "#DuckDB-791" > < span class = "linenos" > 791< / span > < / a >
< / span > < span id = "DuckDB-792" > < a href = "#DuckDB-792" > < span class = "linenos" > 792< / 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" > " size" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-793" > < a href = "#DuckDB-793" > < span class = "linenos" > 793< / span > < / a > < span class = "n" > method< / 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" > " method" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-794" > < a href = "#DuckDB-794" > < span class = "linenos" > 794< / span > < / a > < span class = "k" > if< / span > < span class = "n" > method< / span > < span class = "ow" > and< / span > < span class = "n" > method< / 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 = "o" > !=< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-795" > < a href = "#DuckDB-795" > < span class = "linenos" > 795< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-796" > < a href = "#DuckDB-796" > < span class = "linenos" > 796< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Sampling method < / span > < span class = "si" > {< / span > < span class = "n" > method< / span > < span class = "si" > }< / span > < span class = "s2" > is not supported with a discrete sample count, " < / span >
< / span > < span id = "DuckDB-797" > < a href = "#DuckDB-797" > < span class = "linenos" > 797< / span > < / a > < span class = "s2" > " defaulting to reservoir sampling" < / span >
< / span > < span id = "DuckDB-798" > < a href = "#DuckDB-798" > < span class = "linenos" > 798< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-799" > < a href = "#DuckDB-799" > < span class = "linenos" > 799< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-800" > < a href = "#DuckDB-800" > < span class = "linenos" > 800< / span > < / a >
< / span > < span id = "DuckDB-801" > < a href = "#DuckDB-801" > < span class = "linenos" > 801< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > tablesample_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "n" > tablesample_keyword< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-802" > < a href = "#DuckDB-802" > < span class = "linenos" > 802< / span > < / a >
< / span > < span id = "DuckDB-803" > < a href = "#DuckDB-803" > < span class = "linenos" > 803< / 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 = "DuckDB-804" > < a href = "#DuckDB-804" > < span class = "linenos" > 804< / span > < / a > < span class = "n" > multiplier< / 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" > int< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB-805" > < a href = "#DuckDB-805" > < span class = "linenos" > 805< / span > < / a > < span class = "n" > unit< / span > < span class = "o" > =< / 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" > lower< / span > < span class = "p" > ()< / span >
< / span > < span id = "DuckDB-806" > < a href = "#DuckDB-806" > < span class = "linenos" > 806< / span > < / a >
< / span > < span id = "DuckDB-807" > < a href = "#DuckDB-807" > < span class = "linenos" > 807< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / 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 = "DuckDB-808" > < a href = "#DuckDB-808" > < span class = "linenos" > 808< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 7< / span >
< / span > < span id = "DuckDB-809" > < a href = "#DuckDB-809" > < span class = "linenos" > 809< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " quarter" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-810" > < a href = "#DuckDB-810" > < span class = "linenos" > 810< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 90< / span >
< / span > < span id = "DuckDB-811" > < a href = "#DuckDB-811" > < span class = "linenos" > 811< / span > < / a >
< / span > < span id = "DuckDB-812" > < a href = "#DuckDB-812" > < span class = "linenos" > 812< / span > < / a > < span class = "k" > if< / span > < span class = "n" > multiplier< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-813" > < a href = "#DuckDB-813" > < span class = "linenos" > 813< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > multiplier< / span > < span class = "si" > }< / span > < span class = "s2" > * < / span > < span class = "si" > {< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s1" > ' DAY' < / span > < span class = "p" > )))< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-814" > < a href = "#DuckDB-814" > < span class = "linenos" > 814< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-815" > < a href = "#DuckDB-815" > < span class = "linenos" > 815< / 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 = "DuckDB-816" > < a href = "#DuckDB-816" > < span class = "linenos" > 816< / span > < / a >
< / span > < span id = "DuckDB-817" > < a href = "#DuckDB-817" > < span class = "linenos" > 817< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > columndef_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" > ColumnDef< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > :< / span > < span class = "nb" > str< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-818" > < a href = "#DuckDB-818" > < span class = "linenos" > 818< / 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" > UserDefinedFunction< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-819" > < a href = "#DuckDB-819" > < span class = "linenos" > 819< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-820" > < a href = "#DuckDB-820" > < span class = "linenos" > 820< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > columndef_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-821" > < a href = "#DuckDB-821" > < span class = "linenos" > 821< / span > < / a >
< / span > < span id = "DuckDB-822" > < a href = "#DuckDB-822" > < span class = "linenos" > 822< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > join_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" > Join< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-823" > < a href = "#DuckDB-823" > < span class = "linenos" > 823< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-824" > < a href = "#DuckDB-824" > < span class = "linenos" > 824< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > side< / span > < span class = "o" > ==< / span > < span class = "s2" > " LEFT" < / span >
< / span > < span id = "DuckDB-825" > < a href = "#DuckDB-825" > < span class = "linenos" > 825< / span > < / a > < span class = "ow" > and< / 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" > " on" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-826" > < a href = "#DuckDB-826" > < span class = "linenos" > 826< / span > < / a > < span class = "ow" > and< / span > < span class = "nb" > isinstance< / 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" > Unnest< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-827" > < a href = "#DuckDB-827" > < span class = "linenos" > 827< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-828" > < a href = "#DuckDB-828" > < span class = "linenos" > 828< / span > < / a > < span class = "c1" > # Some dialects support `LEFT JOIN UNNEST(...)` without an explicit ON clause< / span >
< / span > < span id = "DuckDB-829" > < a href = "#DuckDB-829" > < span class = "linenos" > 829< / span > < / a > < span class = "c1" > # DuckDB doesn' t, but we can just add a dummy ON clause that is always true< / span >
< / span > < span id = "DuckDB-830" > < a href = "#DuckDB-830" > < span class = "linenos" > 830< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > true< / span > < span class = "p" > ()))< / span >
< / span > < span id = "DuckDB-831" > < a href = "#DuckDB-831" > < span class = "linenos" > 831< / span > < / a >
< / span > < span id = "DuckDB-832" > < a href = "#DuckDB-832" > < span class = "linenos" > 832< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-833" > < a href = "#DuckDB-833" > < span class = "linenos" > 833< / span > < / a >
< / span > < span id = "DuckDB-834" > < a href = "#DuckDB-834" > < span class = "linenos" > 834< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > generateseries_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" > GenerateSeries< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-835" > < a href = "#DuckDB-835" > < span class = "linenos" > 835< / span > < / a > < span class = "c1" > # GENERATE_SERIES(a, b) -> [a, b], RANGE(a, b) -> [a, b)< / span >
< / span > < span id = "DuckDB-836" > < a href = "#DuckDB-836" > < span class = "linenos" > 836< / 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" > " is_end_exclusive" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-837" > < a href = "#DuckDB-837" > < span class = "linenos" > 837< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " RANGE" < / 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 = "DuckDB-838" > < a href = "#DuckDB-838" > < span class = "linenos" > 838< / span > < / a >
< / span > < span id = "DuckDB-839" > < a href = "#DuckDB-839" > < span class = "linenos" > 839< / 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 = "DuckDB-840" > < a href = "#DuckDB-840" > < span class = "linenos" > 840< / span > < / a >
< / span > < span id = "DuckDB-841" > < a href = "#DuckDB-841" > < span class = "linenos" > 841< / 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 = "DuckDB-842" > < a href = "#DuckDB-842" > < span class = "linenos" > 842< / 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 = "DuckDB-843" > < a href = "#DuckDB-843" > < span class = "linenos" > 843< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Array< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-844" > < a href = "#DuckDB-844" > < span class = "linenos" > 844< / span > < / a > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > replace< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > paren< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-845" > < a href = "#DuckDB-845" > < span class = "linenos" > 845< / span > < / a >
< / span > < span id = "DuckDB-846" > < a href = "#DuckDB-846" > < span class = "linenos" > 846< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / 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 = "DuckDB-847" > < a href = "#DuckDB-847" > < span class = "linenos" > 847< / span > < / a >
< / span > < span id = "DuckDB-848" > < a href = "#DuckDB-848" > < span class = "linenos" > 848< / 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" > " returns_list_for_maps" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-849" > < a href = "#DuckDB-849" > < span class = "linenos" > 849< / 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 = "DuckDB-850" > < a href = "#DuckDB-850" > < span class = "linenos" > 850< / 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 = "DuckDB-851" > < a href = "#DuckDB-851" > < span class = "linenos" > 851< / span > < / a >
< / span > < span id = "DuckDB-852" > < a href = "#DuckDB-852" > < span class = "linenos" > 852< / 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 = "DuckDB-853" > < a href = "#DuckDB-853" > < span class = "linenos" > 853< / span > < / a >
< / span > < span id = "DuckDB-854" > < a href = "#DuckDB-854" > < span class = "linenos" > 854< / 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 = "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" > MAP< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-855" > < a href = "#DuckDB-855" > < span class = "linenos" > 855< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > bracket< / span > < span class = "si" > }< / span > < span class = "s2" > )[1]" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-856" > < a href = "#DuckDB-856" > < span class = "linenos" > 856< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-857" > < a href = "#DuckDB-857" > < span class = "linenos" > 857< / span > < / a > < span class = "k" > return< / span > < span class = "n" > bracket< / span >
< / span > < span id = "DuckDB-858" > < a href = "#DuckDB-858" > < span class = "linenos" > 858< / span > < / a >
< / span > < span id = "DuckDB-859" > < a href = "#DuckDB-859" > < span class = "linenos" > 859< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > withingroup_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" > WithinGroup< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-860" > < a href = "#DuckDB-860" > < span class = "linenos" > 860< / span > < / a > < span class = "n" > expression_sql< / 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" > " expression" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-861" > < a href = "#DuckDB-861" > < span class = "linenos" > 861< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-862" > < a href = "#DuckDB-862" > < span class = "linenos" > 862< / span > < / a > < span class = "n" > func< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "DuckDB-863" > < a href = "#DuckDB-863" > < span class = "linenos" > 863< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > func< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PERCENTILES< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-864" > < a href = "#DuckDB-864" > < span class = "linenos" > 864< / span > < / a > < span class = "c1" > # Make the order key the first arg and slide the fraction to the right< / span >
< / span > < span id = "DuckDB-865" > < a href = "#DuckDB-865" > < span class = "linenos" > 865< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/aggregates#ordered-set-aggregate-functions< / span >
< / span > < span id = "DuckDB-866" > < a href = "#DuckDB-866" > < span class = "linenos" > 866< / span > < / a > < span class = "n" > order_col< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > find< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Ordered< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-867" > < a href = "#DuckDB-867" > < span class = "linenos" > 867< / span > < / a > < span class = "k" > if< / span > < span class = "n" > order_col< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-868" > < a href = "#DuckDB-868" > < span class = "linenos" > 868< / span > < / a > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ,< / span > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-869" > < a href = "#DuckDB-869" > < span class = "linenos" > 869< / span > < / a > < span class = "n" > func< / 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" > order_col< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-870" > < a href = "#DuckDB-870" > < span class = "linenos" > 870< / span > < / a >
< / span > < span id = "DuckDB-871" > < a href = "#DuckDB-871" > < span class = "linenos" > 871< / 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 class = "o" > .< / span > < span class = "n" > rstrip< / span > < span class = "p" > (< / span > < span class = "s2" > " )" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-872" > < a href = "#DuckDB-872" > < span class = "linenos" > 872< / span > < / a >
< / span > < span id = "DuckDB-873" > < a href = "#DuckDB-873" > < span class = "linenos" > 873< / 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" > expression_sql< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
< / span > < span id = "DuckDB-874" > < a href = "#DuckDB-874" > < span class = "linenos" > 874< / span > < / a >
< / span > < span id = "DuckDB-875" > < a href = "#DuckDB-875" > < span class = "linenos" > 875< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > length_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" > Length< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-876" > < a href = "#DuckDB-876" > < span class = "linenos" > 876< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-877" > < a href = "#DuckDB-877" > < span class = "linenos" > 877< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-878" > < a href = "#DuckDB-878" > < span class = "linenos" > 878< / span > < / a > < span class = "c1" > # Dialects like BQ and Snowflake also accept binary values as args, so< / span >
< / span > < span id = "DuckDB-879" > < a href = "#DuckDB-879" > < span class = "linenos" > 879< / span > < / a > < span class = "c1" > # DDB will attempt to infer the type or resort to case/when resolution< / span >
< / span > < span id = "DuckDB-880" > < a href = "#DuckDB-880" > < span class = "linenos" > 880< / 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" > " binary" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-881" > < a href = "#DuckDB-881" > < span class = "linenos" > 881< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-882" > < a href = "#DuckDB-882" > < span class = "linenos" > 882< / span > < / a >
< / span > < span id = "DuckDB-883" > < a href = "#DuckDB-883" > < span class = "linenos" > 883< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-884" > < a href = "#DuckDB-884" > < span class = "linenos" > 884< / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-885" > < a href = "#DuckDB-885" > < span class = "linenos" > 885< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-886" > < a href = "#DuckDB-886" > < span class = "linenos" > 886< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-887" > < a href = "#DuckDB-887" > < span class = "linenos" > 887< / span > < / a >
< / span > < span id = "DuckDB-888" > < a href = "#DuckDB-888" > < span class = "linenos" > 888< / span > < / a > < span class = "k" > if< / span > < span class = "n" > arg< / 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 = "DuckDB-889" > < a href = "#DuckDB-889" > < span class = "linenos" > 889< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-890" > < a href = "#DuckDB-890" > < span class = "linenos" > 890< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-891" > < a href = "#DuckDB-891" > < span class = "linenos" > 891< / span > < / a > < span class = "c1" > # We need these casts to make duckdb' s static type checker happy< / span >
< / span > < span id = "DuckDB-892" > < a href = "#DuckDB-892" > < span class = "linenos" > 892< / span > < / a > < span class = "n" > blob< / 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" > arg< / 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" > VARBINARY< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-893" > < a href = "#DuckDB-893" > < span class = "linenos" > 893< / span > < / a > < span class = "n" > varchar< / 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" > arg< / 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" > VARCHAR< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-894" > < a href = "#DuckDB-894" > < span class = "linenos" > 894< / span > < / a >
< / span > < span id = "DuckDB-895" > < a href = "#DuckDB-895" > < span class = "linenos" > 895< / span > < / a > < span class = "n" > case< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-896" > < a href = "#DuckDB-896" > < span class = "linenos" > 896< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > case< / 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" > " TYPEOF" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-897" > < a href = "#DuckDB-897" > < span class = "linenos" > 897< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-898" > < a href = "#DuckDB-898" > < span class = "linenos" > 898< / span > < / a > < span class = "s2" > " ' VARCHAR' " < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Anonymous< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "s2" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > varchar< / span > < span class = "p" > ])< / span >
< / span > < span id = "DuckDB-899" > < a href = "#DuckDB-899" > < span class = "linenos" > 899< / span > < / a > < span class = "p" > )< / span > < span class = "c1" > # anonymous to break length_sql recursion< / span >
< / span > < span id = "DuckDB-900" > < a href = "#DuckDB-900" > < span class = "linenos" > 900< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span > < span class = "s2" > " ' BLOB' " < / 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" > " OCTET_LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > blob< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-901" > < a href = "#DuckDB-901" > < span class = "linenos" > 901< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-902" > < a href = "#DuckDB-902" > < span class = "linenos" > 902< / span > < / a >
< / span > < span id = "DuckDB-903" > < a href = "#DuckDB-903" > < span class = "linenos" > 903< / 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" > case< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-904" > < a href = "#DuckDB-904" > < span class = "linenos" > 904< / span > < / a >
< / span > < span id = "DuckDB-905" > < a href = "#DuckDB-905" > < span class = "linenos" > 905< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > objectinsert_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" > ObjectInsert< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-906" > < a href = "#DuckDB-906" > < span class = "linenos" > 906< / 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 = "DuckDB-907" > < a href = "#DuckDB-907" > < span class = "linenos" > 907< / span > < / a > < span class = "n" > key< / 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" > " key" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-908" > < a href = "#DuckDB-908" > < span class = "linenos" > 908< / span > < / a > < span class = "n" > key_sql< / span > < span class = "o" > =< / span > < span class = "n" > key< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > key< / 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 = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "DuckDB-909" > < a href = "#DuckDB-909" > < span class = "linenos" > 909< / span > < / a > < span class = "n" > value_sql< / 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" > " value" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-910" > < a href = "#DuckDB-910" > < span class = "linenos" > 910< / span > < / a >
< / span > < span id = "DuckDB-911" > < a href = "#DuckDB-911" > < span class = "linenos" > 911< / span > < / a > < span class = "n" > kv_sql< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > key_sql< / span > < span class = "si" > }< / span > < span class = "s2" > := < / span > < span class = "si" > {< / span > < span class = "n" > value_sql< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "DuckDB-912" > < a href = "#DuckDB-912" > < span class = "linenos" > 912< / span > < / a >
< / span > < span id = "DuckDB-913" > < a href = "#DuckDB-913" > < span class = "linenos" > 913< / span > < / a > < span class = "c1" > # If the input struct is empty e.g. transpiling OBJECT_INSERT(OBJECT_CONSTRUCT(), key, value) from Snowflake< / span >
< / span > < span id = "DuckDB-914" > < a href = "#DuckDB-914" > < span class = "linenos" > 914< / span > < / a > < span class = "c1" > # then we can generate STRUCT_PACK which will build it since STRUCT_INSERT({}, key := value) is not valid DuckDB< / span >
< / span > < span id = "DuckDB-915" > < a href = "#DuckDB-915" > < span class = "linenos" > 915< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Struct< / span > < span class = "p" > )< / span > < span class = "ow" > and< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-916" > < a href = "#DuckDB-916" > < span class = "linenos" > 916< / 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" > " STRUCT_PACK" < / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-917" > < a href = "#DuckDB-917" > < span class = "linenos" > 917< / span > < / a >
< / span > < span id = "DuckDB-918" > < a href = "#DuckDB-918" > < span class = "linenos" > 918< / 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" > " STRUCT_INSERT" < / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-919" > < a href = "#DuckDB-919" > < span class = "linenos" > 919< / span > < / a >
< / span > < span id = "DuckDB-920" > < a href = "#DuckDB-920" > < span class = "linenos" > 920< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > unnest_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" > Unnest< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-921" > < a href = "#DuckDB-921" > < span class = "linenos" > 921< / span > < / a > < span class = "n" > explode_array< / 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" > " explode_array" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-922" > < a href = "#DuckDB-922" > < span class = "linenos" > 922< / span > < / a > < span class = "k" > if< / span > < span class = "n" > explode_array< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-923" > < a href = "#DuckDB-923" > < span class = "linenos" > 923< / span > < / a > < span class = "c1" > # In BigQuery, UNNESTing a nested array leads to explosion of the top-level array & struct< / span >
< / span > < span id = "DuckDB-924" > < a href = "#DuckDB-924" > < span class = "linenos" > 924< / span > < / a > < span class = "c1" > # This is transpiled to DDB by transforming " FROM UNNEST(...)" to " FROM (SELECT UNNEST(..., max_depth => 2))" < / span >
< / span > < span id = "DuckDB-925" > < a href = "#DuckDB-925" > < span class = "linenos" > 925< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-926" > < a href = "#DuckDB-926" > < span class = "linenos" > 926< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Kwarg< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " max_depth" < / span > < span class = "p" > ),< / span > < span class = "n" > expression< / 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" > 2< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-927" > < a href = "#DuckDB-927" > < span class = "linenos" > 927< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-928" > < a href = "#DuckDB-928" > < span class = "linenos" > 928< / span > < / a >
< / span > < span id = "DuckDB-929" > < a href = "#DuckDB-929" > < span class = "linenos" > 929< / span > < / a > < span class = "c1" > # If BQ' s UNNEST is aliased, we transform it from a column alias to a table alias in DDB< / span >
< / span > < span id = "DuckDB-930" > < a href = "#DuckDB-930" > < span class = "linenos" > 930< / span > < / a > < span class = "n" > alias< / 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" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-931" > < a href = "#DuckDB-931" > < span class = "linenos" > 931< / span > < / a > < span class = "k" > if< / span > < span class = "n" > alias< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-932" > < a href = "#DuckDB-932" > < span class = "linenos" > 932< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-933" > < a href = "#DuckDB-933" > < span class = "linenos" > 933< / span > < / a > < span class = "n" > alias< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableAlias< / 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" > alias< / 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" > " columns" < / span > < span class = "p" > ),< / span > < span class = "mi" > 0< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB-934" > < a href = "#DuckDB-934" > < span class = "linenos" > 934< / span > < / a >
< / span > < span id = "DuckDB-935" > < a href = "#DuckDB-935" > < span class = "linenos" > 935< / span > < / a > < span class = "n" > unnest_sql< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-936" > < a href = "#DuckDB-936" > < span class = "linenos" > 936< / span > < / a > < span class = "n" > select< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > (< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > ])< / span > < span class = "o" > .< / span > < span class = "n" > subquery< / span > < span class = "p" > (< / span > < span class = "n" > alias< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-937" > < a href = "#DuckDB-937" > < span class = "linenos" > 937< / 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" > select< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-938" > < a href = "#DuckDB-938" > < span class = "linenos" > 938< / span > < / a >
< / span > < span id = "DuckDB-939" > < a href = "#DuckDB-939" > < span class = "linenos" > 939< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-940" > < a href = "#DuckDB-940" > < span class = "linenos" > 940< / span > < / a >
< / span > < span id = "DuckDB-941" > < a href = "#DuckDB-941" > < span class = "linenos" > 941< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > ignorenulls_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" > IgnoreNulls< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-942" > < a href = "#DuckDB-942" > < span class = "linenos" > 942< / 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" > this< / span > < span class = "p" > ,< / span > < span class = "n" > WINDOW_FUNCS_WITH_IGNORE_NULLS< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-943" > < a href = "#DuckDB-943" > < span class = "linenos" > 943< / span > < / a > < span class = "c1" > # DuckDB should render IGNORE NULLS only for the general-purpose< / span >
< / span > < span id = "DuckDB-944" > < a href = "#DuckDB-944" > < span class = "linenos" > 944< / span > < / a > < span class = "c1" > # window functions that accept it e.g. FIRST_VALUE(... IGNORE NULLS) OVER (...)< / span >
< / span > < span id = "DuckDB-945" > < a href = "#DuckDB-945" > < span class = "linenos" > 945< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > ignorenulls_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-946" > < a href = "#DuckDB-946" > < span class = "linenos" > 946< / span > < / a >
< / span > < span id = "DuckDB-947" > < a href = "#DuckDB-947" > < span class = "linenos" > 947< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-948" > < a href = "#DuckDB-948" > < span class = "linenos" > 948< / span > < / a >
< / span > < span id = "DuckDB-949" > < a href = "#DuckDB-949" > < span class = "linenos" > 949< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > arraytostring_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" > ArrayToString< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-950" > < a href = "#DuckDB-950" > < span class = "linenos" > 950< / 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 = "DuckDB-951" > < a href = "#DuckDB-951" > < span class = "linenos" > 951< / span > < / a > < span class = "n" > null_text< / 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" > " null" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-952" > < a href = "#DuckDB-952" > < span class = "linenos" > 952< / span > < / a >
< / span > < span id = "DuckDB-953" > < a href = "#DuckDB-953" > < span class = "linenos" > 953< / span > < / a > < span class = "k" > if< / span > < span class = "n" > null_text< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-954" > < a href = "#DuckDB-954" > < span class = "linenos" > 954< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " LIST_TRANSFORM(< / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }< / span > < span class = "s2" > , x -> COALESCE(x, < / span > < span class = "si" > {< / span > < span class = "n" > null_text< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB-955" > < a href = "#DuckDB-955" > < span class = "linenos" > 955< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB-956" > < a href = "#DuckDB-956" > < span class = "linenos" > 956< / 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_TO_STRING" < / span > < span class = "p" > ,< / 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 > < span id = "DuckDB-957" > < a href = "#DuckDB-957" > < span class = "linenos" > 957< / span > < / a >
< / span > < span id = "DuckDB-958" > < a href = "#DuckDB-958" > < span class = "linenos" > 958< / span > < / a > < span class = "nd" > @unsupported_args< / span > < span class = "p" > (< / span > < span class = "s2" > " position" < / span > < span class = "p" > ,< / span > < span class = "s2" > " occurrence" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-959" > < a href = "#DuckDB-959" > < span class = "linenos" > 959< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > regexpextract_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" > RegexpExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB-960" > < a href = "#DuckDB-960" > < span class = "linenos" > 960< / span > < / a > < span class = "n" > group< / 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" > " group" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-961" > < a href = "#DuckDB-961" > < span class = "linenos" > 961< / span > < / a > < span class = "n" > params< / 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" > " parameters" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-962" > < a href = "#DuckDB-962" > < span class = "linenos" > 962< / span > < / a >
< / span > < span id = "DuckDB-963" > < a href = "#DuckDB-963" > < span class = "linenos" > 963< / span > < / a > < span class = "c1" > # Do not render group if there is no following argument,< / span >
< / span > < span id = "DuckDB-964" > < a href = "#DuckDB-964" > < span class = "linenos" > 964< / span > < / a > < span class = "c1" > # and it' s the default value for this dialect< / span >
< / span > < span id = "DuckDB-965" > < a href = "#DuckDB-965" > < span class = "linenos" > 965< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB-966" > < a href = "#DuckDB-966" > < span class = "linenos" > 966< / span > < / a > < span class = "ow" > not< / span > < span class = "n" > params< / span >
< / span > < span id = "DuckDB-967" > < a href = "#DuckDB-967" > < span class = "linenos" > 967< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span >
< / span > < span id = "DuckDB-968" > < a href = "#DuckDB-968" > < span class = "linenos" > 968< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "o" > ==< / span > < span class = "nb" > str< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > REGEXP_EXTRACT_DEFAULT_GROUP< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB-969" > < a href = "#DuckDB-969" > < span class = "linenos" > 969< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB-970" > < a href = "#DuckDB-970" > < span class = "linenos" > 970< / span > < / a > < span class = "n" > group< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB-971" > < a href = "#DuckDB-971" > < span class = "linenos" > 971< / 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 = "DuckDB-972" > < a href = "#DuckDB-972" > < span class = "linenos" > 972< / span > < / a > < span class = "s2" > " REGEXP_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 = "n" > group< / span > < span class = "p" > ,< / span > < span class = "n" > params< / span >
< / span > < span id = "DuckDB-973" > < a href = "#DuckDB-973" > < span class = "linenos" > 973< / 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 = "DuckDB.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 = "#DuckDB.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
2025-02-13 21:02:36 +01:00
< / div >
< div id = "DuckDB.SUPPORTS_USER_DEFINED_TYPES" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_USER_DEFINED_TYPES< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.SUPPORTS_USER_DEFINED_TYPES" > < / a >
2025-02-13 21:29:39 +01:00
< div class = "docstring" > < p > Whether user-defined data types are supported.< / p >
2025-02-13 21:19:14 +01:00
< / div >
2025-02-13 21:02:36 +01:00
2025-02-13 20:15:27 +01:00
< / div >
2025-02-13 21:17:09 +01:00
< div id = "DuckDB.SAFE_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" > SAFE_DIVISION< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.SAFE_DIVISION" > < / a >
2025-02-13 21:29:39 +01:00
< div class = "docstring" > < p > Whether division by zero throws an error (< code > False< / code > ) or returns NULL (< code > True< / code > ).< / p >
2025-02-13 21:19:14 +01:00
< / div >
2025-02-13 21:17:09 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.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 21:17:09 +01:00
2025-02-13 21:17:51 +01:00
< / div >
< div id = "DuckDB.CONCAT_COALESCE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > CONCAT_COALESCE< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.CONCAT_COALESCE" > < / a >
2025-02-13 21:19:14 +01:00
< div class = "docstring" > < p > A < code > NULL< / code > arg in < code > CONCAT< / code > yields < code > NULL< / code > by default, but in some dialects it yields an empty string.< / p >
< / div >
2025-02-13 21:17:51 +01:00
2025-02-13 21:43:00 +01:00
< / div >
< div id = "DuckDB.SUPPORTS_ORDER_BY_ALL" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_ORDER_BY_ALL< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.SUPPORTS_ORDER_BY_ALL" > < / a >
< div class = "docstring" > < p > Whether ORDER BY ALL is supported (expands to all the selected columns) as in DuckDB, Spark3/Databricks< / p >
< / div >
2025-02-13 21:52:32 +01:00
< / div >
< div id = "DuckDB.SUPPORTS_FIXED_SIZE_ARRAYS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_FIXED_SIZE_ARRAYS< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.SUPPORTS_FIXED_SIZE_ARRAYS" > < / a >
2025-02-13 21:54:13 +01:00
< div class = "docstring" > < p > Whether expressions such as x::INT[5] should be parsed as fixed-size array defs/casts e.g.
in DuckDB. In dialects which don't support fixed size arrays such as Snowflake, this should
be interpreted as a subscript/index operator.< / p >
< / div >
< / div >
< div id = "DuckDB.STRICT_JSON_PATH_SYNTAX" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > STRICT_JSON_PATH_SYNTAX< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.STRICT_JSON_PATH_SYNTAX" > < / a >
< div class = "docstring" > < p > Whether failing to parse a JSON path expression using the JSONPath dialect will log a warning.< / p >
2025-02-13 21:52:32 +01:00
< / div >
2025-02-13 21:17:09 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.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:20:36 +01:00
< / div >
< div id = "DuckDB.to_json_path" class = "classattr" >
< input id = "DuckDB.to_json_path-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" > to_json_path< / span > < span class = "signature pdoc-code multiline" > (< span class = "param" > < span class = "bp" > self< / span > ,< / span > < span class = "param" > < span class = "n" > path< / span > < span class = "p" > :< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "n" > < a href = "../expressions.html#Expression" > sqlglot.expressions.Expression< / a > < / span > < span class = "p" > ]< / span > < / span > < span class = "return-annotation" > ) -> < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "n" > < a href = "../expressions.html#Expression" > sqlglot.expressions.Expression< / a > < / span > < span class = "p" > ]< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.to_json_path-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.to_json_path" > < / a >
2025-02-13 21:56:19 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.to_json_path-274" > < a href = "#DuckDB.to_json_path-274" > < span class = "linenos" > 274< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > to_json_path< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > path< / 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" > Expression< / span > < span class = "p" > ])< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB.to_json_path-275" > < a href = "#DuckDB.to_json_path-275" > < span class = "linenos" > 275< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > path< / 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 = "DuckDB.to_json_path-276" > < a href = "#DuckDB.to_json_path-276" > < span class = "linenos" > 276< / span > < / a > < span class = "c1" > # DuckDB also supports the JSON pointer syntax, where every path starts with a `/`.< / span >
< / span > < span id = "DuckDB.to_json_path-277" > < a href = "#DuckDB.to_json_path-277" > < span class = "linenos" > 277< / span > < / a > < span class = "c1" > # Additionally, it allows accessing the back of lists using the `[#-i]` syntax.< / span >
< / span > < span id = "DuckDB.to_json_path-278" > < a href = "#DuckDB.to_json_path-278" > < span class = "linenos" > 278< / span > < / a > < span class = "c1" > # This check ensures we' ll avoid trying to parse these as JSON paths, which can< / span >
< / span > < span id = "DuckDB.to_json_path-279" > < a href = "#DuckDB.to_json_path-279" > < span class = "linenos" > 279< / span > < / a > < span class = "c1" > # either result in a noisy warning or in an invalid representation of the path.< / span >
< / span > < span id = "DuckDB.to_json_path-280" > < a href = "#DuckDB.to_json_path-280" > < span class = "linenos" > 280< / span > < / a > < span class = "n" > path_text< / span > < span class = "o" > =< / span > < span class = "n" > path< / span > < span class = "o" > .< / span > < span class = "n" > name< / span >
< / span > < span id = "DuckDB.to_json_path-281" > < a href = "#DuckDB.to_json_path-281" > < span class = "linenos" > 281< / span > < / a > < span class = "k" > if< / span > < span class = "n" > path_text< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " /" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "s2" > " [#" < / span > < span class = "ow" > in< / span > < span class = "n" > path_text< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.to_json_path-282" > < a href = "#DuckDB.to_json_path-282" > < span class = "linenos" > 282< / span > < / a > < span class = "k" > return< / span > < span class = "n" > path< / span >
< / span > < span id = "DuckDB.to_json_path-283" > < a href = "#DuckDB.to_json_path-283" > < span class = "linenos" > 283< / span > < / a >
< / span > < span id = "DuckDB.to_json_path-284" > < a href = "#DuckDB.to_json_path-284" > < span class = "linenos" > 284< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > to_json_path< / span > < span class = "p" > (< / span > < span class = "n" > path< / span > < span class = "p" > )< / span >
2025-02-13 21:20:36 +01:00
< / span > < / pre > < / div >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.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 = "DuckDB.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 = "#DuckDB.Tokenizer" > DuckDB.Tokenizer< / a > ' > < / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.tokenizer_class" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.jsonpath_tokenizer_class" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Parser" > DuckDB.Parser< / a > ' > < / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.parser_class" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator" > DuckDB.Generator< / a > ' > < / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.generator_class" > < / a >
< / div >
< div id = "DuckDB.TIME_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TIME_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.TIME_TRIE" > < / a >
< / div >
< div id = "DuckDB.FORMAT_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > FORMAT_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.FORMAT_TRIE" > < / a >
< / div >
< div id = "DuckDB.INVERSE_TIME_MAPPING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INVERSE_TIME_MAPPING< / span > < span class = "annotation" > : Dict[str, str]< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.INVERSE_TIME_MAPPING" > < / a >
< / div >
< div id = "DuckDB.INVERSE_TIME_TRIE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > INVERSE_TIME_TRIE< / span > < span class = "annotation" > : Dict< / span > =
< span class = "default_value" > {}< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.INVERSE_TIME_TRIE" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.INVERSE_FORMAT_MAPPING" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.INVERSE_FORMAT_TRIE" > < / a >
2025-02-13 21:52:32 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.INVERSE_CREATABLE_KIND_MAPPING" > < / a >
2025-02-13 21:04:58 +01:00
< / div >
2025-02-13 21:30:28 +01:00
< div id = "DuckDB.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 = "#DuckDB.ESCAPED_SEQUENCES" > < / a >
2025-02-13 21:04:58 +01:00
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.QUOTE_START" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > QUOTE_START< / span > =
< span class = "default_value" > " ' " < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.QUOTE_START" > < / a >
< / div >
< div id = "DuckDB.QUOTE_END" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > QUOTE_END< / span > =
< span class = "default_value" > " ' " < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.QUOTE_END" > < / a >
< / div >
< div id = "DuckDB.IDENTIFIER_START" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > IDENTIFIER_START< / span > =
< span class = "default_value" > ' " ' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.IDENTIFIER_START" > < / a >
< / div >
< div id = "DuckDB.IDENTIFIER_END" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > IDENTIFIER_END< / span > =
< span class = "default_value" > ' " ' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.IDENTIFIER_END" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.BIT_START" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.BIT_END" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.HEX_START" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.HEX_END" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.BYTE_START" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.BYTE_END" > < / a >
2025-02-13 21:19:14 +01:00
< / div >
< div id = "DuckDB.UNICODE_START" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > UNICODE_START< / span > < span class = "annotation" > : Optional[str]< / span > =
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.UNICODE_START" > < / a >
< / div >
< div id = "DuckDB.UNICODE_END" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > UNICODE_END< / span > < span class = "annotation" > : Optional[str]< / span > =
< span class = "default_value" > None< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.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 = "DuckDB.__init__" class = "function" > < a href = "dialect.html#Dialect.__init__" > Dialect< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "DuckDB.WEEK_OFFSET" class = "variable" > < a href = "dialect.html#Dialect.WEEK_OFFSET" > WEEK_OFFSET< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.UNNEST_COLUMN_ONLY" class = "variable" > < a href = "dialect.html#Dialect.UNNEST_COLUMN_ONLY" > UNNEST_COLUMN_ONLY< / a > < / dd >
< dd id = "DuckDB.ALIAS_POST_TABLESAMPLE" class = "variable" > < a href = "dialect.html#Dialect.ALIAS_POST_TABLESAMPLE" > ALIAS_POST_TABLESAMPLE< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "DuckDB.TABLESAMPLE_SIZE_IS_PERCENT" class = "variable" > < a href = "dialect.html#Dialect.TABLESAMPLE_SIZE_IS_PERCENT" > TABLESAMPLE_SIZE_IS_PERCENT< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.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 = "DuckDB.DPIPE_IS_STRING_CONCAT" class = "variable" > < a href = "dialect.html#Dialect.DPIPE_IS_STRING_CONCAT" > DPIPE_IS_STRING_CONCAT< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.STRICT_STRING_CONCAT" class = "variable" > < a href = "dialect.html#Dialect.STRICT_STRING_CONCAT" > STRICT_STRING_CONCAT< / a > < / dd >
2025-02-13 21:03:38 +01:00
< dd id = "DuckDB.SUPPORTS_SEMI_ANTI_JOIN" class = "variable" > < a href = "dialect.html#Dialect.SUPPORTS_SEMI_ANTI_JOIN" > SUPPORTS_SEMI_ANTI_JOIN< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "DuckDB.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 = "DuckDB.NORMALIZE_FUNCTIONS" class = "variable" > < a href = "dialect.html#Dialect.NORMALIZE_FUNCTIONS" > NORMALIZE_FUNCTIONS< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "DuckDB.LOG_BASE_FIRST" class = "variable" > < a href = "dialect.html#Dialect.LOG_BASE_FIRST" > LOG_BASE_FIRST< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "DuckDB.TYPED_DIVISION" class = "variable" > < a href = "dialect.html#Dialect.TYPED_DIVISION" > TYPED_DIVISION< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "DuckDB.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 = "DuckDB.DATE_FORMAT" class = "variable" > < a href = "dialect.html#Dialect.DATE_FORMAT" > DATE_FORMAT< / a > < / dd >
< dd id = "DuckDB.DATEINT_FORMAT" class = "variable" > < a href = "dialect.html#Dialect.DATEINT_FORMAT" > DATEINT_FORMAT< / a > < / dd >
< dd id = "DuckDB.TIME_FORMAT" class = "variable" > < a href = "dialect.html#Dialect.TIME_FORMAT" > TIME_FORMAT< / a > < / dd >
< dd id = "DuckDB.TIME_MAPPING" class = "variable" > < a href = "dialect.html#Dialect.TIME_MAPPING" > TIME_MAPPING< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.PSEUDOCOLUMNS" class = "variable" > < a href = "dialect.html#Dialect.PSEUDOCOLUMNS" > PSEUDOCOLUMNS< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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:52:32 +01:00
< dd id = "DuckDB.HAS_DISTINCT_ARRAY_CONSTRUCTORS" class = "variable" > < a href = "dialect.html#Dialect.HAS_DISTINCT_ARRAY_CONSTRUCTORS" > HAS_DISTINCT_ARRAY_CONSTRUCTORS< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "DuckDB.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 = "DuckDB.ARRAY_AGG_INCLUDES_NULLS" class = "variable" > < a href = "dialect.html#Dialect.ARRAY_AGG_INCLUDES_NULLS" > ARRAY_AGG_INCLUDES_NULLS< / a > < / dd >
< dd id = "DuckDB.REGEXP_EXTRACT_DEFAULT_GROUP" class = "variable" > < a href = "dialect.html#Dialect.REGEXP_EXTRACT_DEFAULT_GROUP" > REGEXP_EXTRACT_DEFAULT_GROUP< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.TYPE_TO_EXPRESSIONS" class = "variable" > < a href = "dialect.html#Dialect.TYPE_TO_EXPRESSIONS" > TYPE_TO_EXPRESSIONS< / a > < / dd >
< dd id = "DuckDB.ANNOTATORS" class = "variable" > < a href = "dialect.html#Dialect.ANNOTATORS" > ANNOTATORS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.settings" class = "variable" > < a href = "dialect.html#Dialect.settings" > settings< / a > < / dd >
2025-02-13 20:04:59 +01:00
< dd id = "DuckDB.normalize_identifier" class = "function" > < a href = "dialect.html#Dialect.normalize_identifier" > normalize_identifier< / a > < / dd >
< dd id = "DuckDB.case_sensitive" class = "function" > < a href = "dialect.html#Dialect.case_sensitive" > case_sensitive< / a > < / dd >
< dd id = "DuckDB.can_identify" class = "function" > < a href = "dialect.html#Dialect.can_identify" > can_identify< / a > < / dd >
< dd id = "DuckDB.quote_identifier" class = "function" > < a href = "dialect.html#Dialect.quote_identifier" > quote_identifier< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "DuckDB.parse" class = "function" > < a href = "dialect.html#Dialect.parse" > parse< / a > < / dd >
< dd id = "DuckDB.parse_into" class = "function" > < a href = "dialect.html#Dialect.parse_into" > parse_into< / a > < / dd >
< dd id = "DuckDB.generate" class = "function" > < a href = "dialect.html#Dialect.generate" > generate< / a > < / dd >
< dd id = "DuckDB.transpile" class = "function" > < a href = "dialect.html#Dialect.transpile" > transpile< / a > < / dd >
2025-02-13 15:46:19 +01:00
< dd id = "DuckDB.tokenize" class = "function" > < a href = "dialect.html#Dialect.tokenize" > tokenize< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.tokenizer" class = "variable" > < a href = "dialect.html#Dialect.tokenizer" > tokenizer< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "DuckDB.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 = "DuckDB.parser" class = "function" > < a href = "dialect.html#Dialect.parser" > parser< / a > < / dd >
< dd id = "DuckDB.generator" class = "function" > < a href = "dialect.html#Dialect.generator" > generator< / a > < / dd >
< / div >
< / dl >
< / div >
< / section >
< section id = "DuckDB.Tokenizer" >
< input id = "DuckDB.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" > DuckDB.Tokenizer< / span > < wbr > (< span class = "base" > < a href = "../tokens.html#Tokenizer" > sqlglot.tokens.Tokenizer< / a > < / span > ):
< label class = "view-source-button" for = "DuckDB.Tokenizer-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Tokenizer" > < / a >
2025-02-13 21:56:19 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Tokenizer-286" > < a href = "#DuckDB.Tokenizer-286" > < span class = "linenos" > 286< / 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 = "DuckDB.Tokenizer-287" > < a href = "#DuckDB.Tokenizer-287" > < span class = "linenos" > 287< / span > < / a > < span class = "n" > HEREDOC_STRINGS< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "s2" > " $" < / span > < span class = "p" > ]< / span >
< / span > < span id = "DuckDB.Tokenizer-288" > < a href = "#DuckDB.Tokenizer-288" > < span class = "linenos" > 288< / span > < / a >
< / span > < span id = "DuckDB.Tokenizer-289" > < a href = "#DuckDB.Tokenizer-289" > < span class = "linenos" > 289< / span > < / a > < span class = "n" > HEREDOC_TAG_IS_IDENTIFIER< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB.Tokenizer-290" > < a href = "#DuckDB.Tokenizer-290" > < span class = "linenos" > 290< / span > < / a > < span class = "n" > HEREDOC_STRING_ALTERNATIVE< / span > < span class = "o" > =< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span >
< / span > < span id = "DuckDB.Tokenizer-291" > < a href = "#DuckDB.Tokenizer-291" > < span class = "linenos" > 291< / span > < / a >
< / span > < span id = "DuckDB.Tokenizer-292" > < a href = "#DuckDB.Tokenizer-292" > < span class = "linenos" > 292< / span > < / a > < span class = "n" > KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Tokenizer-293" > < a href = "#DuckDB.Tokenizer-293" > < span class = "linenos" > 293< / 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 = "DuckDB.Tokenizer-294" > < a href = "#DuckDB.Tokenizer-294" > < span class = "linenos" > 294< / span > < / a > < span class = "s2" > " //" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DIV< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-295" > < a href = "#DuckDB.Tokenizer-295" > < span class = "linenos" > 295< / span > < / a > < span class = "s2" > " **" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DSTAR< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-296" > < a href = "#DuckDB.Tokenizer-296" > < span class = "linenos" > 296< / span > < / a > < span class = "s2" > " ^@" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET_AT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-297" > < a href = "#DuckDB.Tokenizer-297" > < span class = "linenos" > 297< / span > < / a > < span class = "s2" > " @> " < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > AT_GT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-298" > < a href = "#DuckDB.Tokenizer-298" > < span class = "linenos" > 298< / span > < / a > < span class = "s2" > " < @" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > LT_AT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-299" > < a href = "#DuckDB.Tokenizer-299" > < span class = "linenos" > 299< / span > < / a > < span class = "s2" > " ATTACH" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > COMMAND< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-300" > < a href = "#DuckDB.Tokenizer-300" > < span class = "linenos" > 300< / span > < / a > < span class = "s2" > " BINARY" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > VARBINARY< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-301" > < a href = "#DuckDB.Tokenizer-301" > < span class = "linenos" > 301< / span > < / a > < span class = "s2" > " BITSTRING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BIT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-302" > < a href = "#DuckDB.Tokenizer-302" > < span class = "linenos" > 302< / span > < / a > < span class = "s2" > " BPCHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-303" > < a href = "#DuckDB.Tokenizer-303" > < span class = "linenos" > 303< / span > < / a > < span class = "s2" > " CHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-304" > < a href = "#DuckDB.Tokenizer-304" > < span class = "linenos" > 304< / span > < / a > < span class = "s2" > " CHARACTER VARYING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-305" > < a href = "#DuckDB.Tokenizer-305" > < span class = "linenos" > 305< / span > < / a > < span class = "s2" > " EXCLUDE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > EXCEPT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-306" > < a href = "#DuckDB.Tokenizer-306" > < span class = "linenos" > 306< / span > < / a > < span class = "s2" > " LOGICAL" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > BOOLEAN< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-307" > < a href = "#DuckDB.Tokenizer-307" > < span class = "linenos" > 307< / span > < / a > < span class = "s2" > " ONLY" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > ONLY< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-308" > < a href = "#DuckDB.Tokenizer-308" > < span class = "linenos" > 308< / span > < / a > < span class = "s2" > " PIVOT_WIDER" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PIVOT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-309" > < a href = "#DuckDB.Tokenizer-309" > < span class = "linenos" > 309< / span > < / a > < span class = "s2" > " POSITIONAL" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > POSITIONAL< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-310" > < a href = "#DuckDB.Tokenizer-310" > < span class = "linenos" > 310< / span > < / a > < span class = "s2" > " SIGNED" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > INT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-311" > < a href = "#DuckDB.Tokenizer-311" > < span class = "linenos" > 311< / span > < / a > < span class = "s2" > " STRING" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-312" > < a href = "#DuckDB.Tokenizer-312" > < span class = "linenos" > 312< / span > < / a > < span class = "s2" > " SUMMARIZE" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > SUMMARIZE< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-313" > < a href = "#DuckDB.Tokenizer-313" > < span class = "linenos" > 313< / span > < / a > < span class = "s2" > " TIMESTAMP_S" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_S< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-314" > < a href = "#DuckDB.Tokenizer-314" > < span class = "linenos" > 314< / span > < / a > < span class = "s2" > " TIMESTAMP_MS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_MS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-315" > < a href = "#DuckDB.Tokenizer-315" > < span class = "linenos" > 315< / span > < / a > < span class = "s2" > " TIMESTAMP_NS" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP_NS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-316" > < a href = "#DuckDB.Tokenizer-316" > < span class = "linenos" > 316< / span > < / a > < span class = "s2" > " TIMESTAMP_US" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TIMESTAMP< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-317" > < a href = "#DuckDB.Tokenizer-317" > < span class = "linenos" > 317< / span > < / a > < span class = "s2" > " UBIGINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UBIGINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-318" > < a href = "#DuckDB.Tokenizer-318" > < span class = "linenos" > 318< / span > < / a > < span class = "s2" > " UINTEGER" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-319" > < a href = "#DuckDB.Tokenizer-319" > < span class = "linenos" > 319< / span > < / a > < span class = "s2" > " USMALLINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > USMALLINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-320" > < a href = "#DuckDB.Tokenizer-320" > < span class = "linenos" > 320< / span > < / a > < span class = "s2" > " UTINYINT" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > UTINYINT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-321" > < a href = "#DuckDB.Tokenizer-321" > < span class = "linenos" > 321< / span > < / a > < span class = "s2" > " VARCHAR" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TEXT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-322" > < a href = "#DuckDB.Tokenizer-322" > < span class = "linenos" > 322< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Tokenizer-323" > < a href = "#DuckDB.Tokenizer-323" > < span class = "linenos" > 323< / 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 = "DuckDB.Tokenizer-324" > < a href = "#DuckDB.Tokenizer-324" > < span class = "linenos" > 324< / span > < / a >
< / span > < span id = "DuckDB.Tokenizer-325" > < a href = "#DuckDB.Tokenizer-325" > < span class = "linenos" > 325< / span > < / a > < span class = "n" > SINGLE_TOKENS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Tokenizer-326" > < a href = "#DuckDB.Tokenizer-326" > < span class = "linenos" > 326< / 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" > SINGLE_TOKENS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-327" > < a href = "#DuckDB.Tokenizer-327" > < span class = "linenos" > 327< / span > < / a > < span class = "s2" > " $" < / span > < span class = "p" > :< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Tokenizer-328" > < a href = "#DuckDB.Tokenizer-328" > < span class = "linenos" > 328< / span > < / a > < span class = "p" > }< / span >
2025-02-13 15:23:26 +01:00
< / span > < / pre > < / div >
2025-02-13 21:30:28 +01:00
< div id = "DuckDB.Tokenizer.HEREDOC_STRINGS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > HEREDOC_STRINGS< / span > =
< span class = "default_value" > [' $' ]< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Tokenizer.HEREDOC_STRINGS" > < / a >
< / div >
< div id = "DuckDB.Tokenizer.HEREDOC_TAG_IS_IDENTIFIER" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > HEREDOC_TAG_IS_IDENTIFIER< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Tokenizer.HEREDOC_TAG_IS_IDENTIFIER" > < / a >
< / div >
< div id = "DuckDB.Tokenizer.HEREDOC_STRING_ALTERNATIVE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > HEREDOC_STRING_ALTERNATIVE< / span > =
< span class = "default_value" > < TokenType.PARAMETER: ' PARAMETER' > < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Tokenizer.HEREDOC_STRING_ALTERNATIVE" > < / a >
< / div >
2025-02-13 20:15:27 +01:00
< div id = "DuckDB.Tokenizer.KEYWORDS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > KEYWORDS< / span > =
< input id = "DuckDB.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 = "DuckDB.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 = "#DuckDB.Tokenizer.KEYWORDS" > < / a >
2025-02-13 21:19:14 +01:00
< / div >
< div id = "DuckDB.Tokenizer.SINGLE_TOKENS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SINGLE_TOKENS< / span > =
< input id = "DuckDB.Tokenizer.SINGLE_TOKENS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:33:25 +01:00
< label class = "view-value-button pdoc-button" for = "DuckDB.Tokenizer.SINGLE_TOKENS-view-value" > < / label > < span class = "default_value" > {' (' : < TokenType.L_PAREN: ' L_PAREN' > , ' )' : < TokenType.R_PAREN: ' R_PAREN' > , ' [' : < TokenType.L_BRACKET: ' L_BRACKET' > , ' ]' : < TokenType.R_BRACKET: ' R_BRACKET' > , ' {' : < TokenType.L_BRACE: ' L_BRACE' > , ' }' : < TokenType.R_BRACE: ' R_BRACE' > , ' & ' : < TokenType.AMP: ' AMP' > , ' ^' : < TokenType.CARET: ' CARET' > , ' :' : < TokenType.COLON: ' COLON' > , ' ,' : < TokenType.COMMA: ' COMMA' > , ' .' : < TokenType.DOT: ' DOT' > , ' -' : < TokenType.DASH: ' DASH' > , ' =' : < TokenType.EQ: ' EQ' > , ' > ' : < TokenType.GT: ' GT' > , ' < ' : < TokenType.LT: ' LT' > , ' %' : < TokenType.MOD: ' MOD' > , ' !' : < TokenType.NOT: ' NOT' > , ' |' : < TokenType.PIPE: ' PIPE' > , ' +' : < TokenType.PLUS: ' PLUS' > , ' ;' : < TokenType.SEMICOLON: ' SEMICOLON' > , ' /' : < TokenType.SLASH: ' SLASH' > , ' \\' : < TokenType.BACKSLASH: ' BACKSLASH' > , ' *' : < TokenType.STAR: ' STAR' > , ' ~' : < TokenType.TILDA: ' TILDA' > , ' ?' : < TokenType.PLACEHOLDER: ' PLACEHOLDER' > , ' @' : < TokenType.PARAMETER: ' PARAMETER' > , ' #' : < TokenType.HASH: ' HASH' > , " ' " : < TokenType.UNKNOWN: ' UNKNOWN' > , ' `' : < TokenType.UNKNOWN: ' UNKNOWN' > , ' " ' : < TokenType.UNKNOWN: ' UNKNOWN' > , ' $' : < TokenType.PARAMETER: ' PARAMETER' > }< / span >
2025-02-13 21:19:14 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Tokenizer.SINGLE_TOKENS" > < / 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 = "../tokens.html#Tokenizer" > sqlglot.tokens.Tokenizer< / a > < / dt >
2025-02-13 21:17:09 +01:00
< dd id = "DuckDB.Tokenizer.__init__" class = "function" > < a href = "../tokens.html#Tokenizer.__init__" > Tokenizer< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Tokenizer.BIT_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.BIT_STRINGS" > BIT_STRINGS< / a > < / dd >
< dd id = "DuckDB.Tokenizer.BYTE_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.BYTE_STRINGS" > BYTE_STRINGS< / a > < / dd >
< dd id = "DuckDB.Tokenizer.HEX_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.HEX_STRINGS" > HEX_STRINGS< / a > < / dd >
< dd id = "DuckDB.Tokenizer.RAW_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.RAW_STRINGS" > RAW_STRINGS< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "DuckDB.Tokenizer.UNICODE_STRINGS" class = "variable" > < a href = "../tokens.html#Tokenizer.UNICODE_STRINGS" > UNICODE_STRINGS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Tokenizer.IDENTIFIERS" class = "variable" > < a href = "../tokens.html#Tokenizer.IDENTIFIERS" > IDENTIFIERS< / a > < / dd >
< dd id = "DuckDB.Tokenizer.QUOTES" class = "variable" > < a href = "../tokens.html#Tokenizer.QUOTES" > QUOTES< / a > < / dd >
< dd id = "DuckDB.Tokenizer.STRING_ESCAPES" class = "variable" > < a href = "../tokens.html#Tokenizer.STRING_ESCAPES" > STRING_ESCAPES< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Tokenizer.IDENTIFIER_ESCAPES" class = "variable" > < a href = "../tokens.html#Tokenizer.IDENTIFIER_ESCAPES" > IDENTIFIER_ESCAPES< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Tokenizer.WHITE_SPACE" class = "variable" > < a href = "../tokens.html#Tokenizer.WHITE_SPACE" > WHITE_SPACE< / a > < / dd >
< dd id = "DuckDB.Tokenizer.COMMANDS" class = "variable" > < a href = "../tokens.html#Tokenizer.COMMANDS" > COMMANDS< / a > < / dd >
< dd id = "DuckDB.Tokenizer.COMMAND_PREFIX_TOKENS" class = "variable" > < a href = "../tokens.html#Tokenizer.COMMAND_PREFIX_TOKENS" > COMMAND_PREFIX_TOKENS< / a > < / dd >
< dd id = "DuckDB.Tokenizer.NUMERIC_LITERALS" class = "variable" > < a href = "../tokens.html#Tokenizer.NUMERIC_LITERALS" > NUMERIC_LITERALS< / a > < / dd >
< dd id = "DuckDB.Tokenizer.COMMENTS" class = "variable" > < a href = "../tokens.html#Tokenizer.COMMENTS" > COMMENTS< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "DuckDB.Tokenizer.dialect" class = "variable" > < a href = "../tokens.html#Tokenizer.dialect" > dialect< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Tokenizer.reset" class = "function" > < a href = "../tokens.html#Tokenizer.reset" > reset< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "DuckDB.Tokenizer.tokenize" class = "function" > < a href = "../tokens.html#Tokenizer.tokenize" > tokenize< / a > < / dd >
2025-02-13 21:17:51 +01:00
< dd id = "DuckDB.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 = "DuckDB.Tokenizer.size" class = "variable" > < a href = "../tokens.html#Tokenizer.size" > size< / a > < / dd >
< dd id = "DuckDB.Tokenizer.sql" class = "variable" > < a href = "../tokens.html#Tokenizer.sql" > sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser" >
< input id = "DuckDB.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" > DuckDB.Parser< / span > < wbr > (< span class = "base" > < a href = "../parser.html#Parser" > sqlglot.parser.Parser< / a > < / span > ):
< label class = "view-source-button" for = "DuckDB.Parser-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Parser" > < / a >
2025-02-13 21:56:19 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Parser-330" > < a href = "#DuckDB.Parser-330" > < span class = "linenos" > 330< / 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 = "DuckDB.Parser-331" > < a href = "#DuckDB.Parser-331" > < span class = "linenos" > 331< / span > < / a > < span class = "n" > BITWISE< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-332" > < a href = "#DuckDB.Parser-332" > < span class = "linenos" > 332< / 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" > BITWISE< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-333" > < a href = "#DuckDB.Parser-333" > < span class = "linenos" > 333< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > TILDA< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-334" > < a href = "#DuckDB.Parser-334" > < span class = "linenos" > 334< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-335" > < a href = "#DuckDB.Parser-335" > < span class = "linenos" > 335< / span > < / a > < span class = "n" > BITWISE< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-336" > < a href = "#DuckDB.Parser-336" > < span class = "linenos" > 336< / span > < / a >
< / span > < span id = "DuckDB.Parser-337" > < a href = "#DuckDB.Parser-337" > < span class = "linenos" > 337< / span > < / a > < span class = "n" > RANGE_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-338" > < a href = "#DuckDB.Parser-338" > < span class = "linenos" > 338< / 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" > RANGE_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-339" > < a href = "#DuckDB.Parser-339" > < span class = "linenos" > 339< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DAMP< / span > < span class = "p" > :< / span > < span class = "n" > binary_range_parser< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayOverlaps< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-340" > < a href = "#DuckDB.Parser-340" > < span class = "linenos" > 340< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET_AT< / span > < span class = "p" > :< / span > < span class = "n" > binary_range_parser< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StartsWith< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-341" > < a href = "#DuckDB.Parser-341" > < span class = "linenos" > 341< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-342" > < a href = "#DuckDB.Parser-342" > < span class = "linenos" > 342< / span > < / a >
< / span > < span id = "DuckDB.Parser-343" > < a href = "#DuckDB.Parser-343" > < span class = "linenos" > 343< / span > < / a > < span class = "n" > EXPONENT< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-344" > < a href = "#DuckDB.Parser-344" > < span class = "linenos" > 344< / 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" > EXPONENT< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-345" > < a href = "#DuckDB.Parser-345" > < span class = "linenos" > 345< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > CARET< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pow< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-346" > < a href = "#DuckDB.Parser-346" > < span class = "linenos" > 346< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > DSTAR< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pow< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-347" > < a href = "#DuckDB.Parser-347" > < span class = "linenos" > 347< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-348" > < a href = "#DuckDB.Parser-348" > < span class = "linenos" > 348< / span > < / a >
< / span > < span id = "DuckDB.Parser-349" > < a href = "#DuckDB.Parser-349" > < span class = "linenos" > 349< / span > < / a > < span class = "n" > FUNCTIONS_WITH_ALIASED_ARGS< / span > < span class = "o" > =< / span > < span class = "p" > {< / 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" > FUNCTIONS_WITH_ALIASED_ARGS< / span > < span class = "p" > ,< / span > < span class = "s2" > " STRUCT_PACK" < / span > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-350" > < a href = "#DuckDB.Parser-350" > < span class = "linenos" > 350< / span > < / a >
< / span > < span id = "DuckDB.Parser-351" > < a href = "#DuckDB.Parser-351" > < span class = "linenos" > 351< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-352" > < a href = "#DuckDB.Parser-352" > < span class = "linenos" > 352< / 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 = "DuckDB.Parser-353" > < a href = "#DuckDB.Parser-353" > < span class = "linenos" > 353< / span > < / a > < span class = "s2" > " ARRAY_REVERSE_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > _build_sort_array_desc< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-354" > < a href = "#DuckDB.Parser-354" > < span class = "linenos" > 354< / span > < / a > < span class = "s2" > " ARRAY_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-355" > < a href = "#DuckDB.Parser-355" > < span class = "linenos" > 355< / span > < / a > < span class = "s2" > " DATEDIFF" < / span > < span class = "p" > :< / span > < span class = "n" > _build_date_diff< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-356" > < a href = "#DuckDB.Parser-356" > < span class = "linenos" > 356< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > :< / span > < span class = "n" > _build_date_diff< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-357" > < a href = "#DuckDB.Parser-357" > < span class = "linenos" > 357< / 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 = "DuckDB.Parser-358" > < a href = "#DuckDB.Parser-358" > < span class = "linenos" > 358< / span > < / a > < span class = "s2" > " DATETRUNC" < / span > < span class = "p" > :< / span > < span class = "n" > date_trunc_to_time< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-359" > < a href = "#DuckDB.Parser-359" > < span class = "linenos" > 359< / span > < / a > < span class = "s2" > " DECODE" < / 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 = "DuckDB.Parser-360" > < a href = "#DuckDB.Parser-360" > < span class = "linenos" > 360< / 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 = "DuckDB.Parser-361" > < a href = "#DuckDB.Parser-361" > < span class = "linenos" > 361< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-362" > < a href = "#DuckDB.Parser-362" > < span class = "linenos" > 362< / span > < / a > < span class = "s2" > " ENCODE" < / 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 = "DuckDB.Parser-363" > < a href = "#DuckDB.Parser-363" > < span class = "linenos" > 363< / 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 = "DuckDB.Parser-364" > < a href = "#DuckDB.Parser-364" > < span class = "linenos" > 364< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-365" > < a href = "#DuckDB.Parser-365" > < span class = "linenos" > 365< / span > < / a > < span class = "s2" > " EPOCH" < / 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 = "DuckDB.Parser-366" > < a href = "#DuckDB.Parser-366" > < span class = "linenos" > 366< / span > < / a > < span class = "s2" > " EPOCH_MS" < / 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" > UnixToTime< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Parser-367" > < a href = "#DuckDB.Parser-367" > < span class = "linenos" > 367< / 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" > scale< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > UnixToTime< / span > < span class = "o" > .< / span > < span class = "n" > MILLIS< / span >
< / span > < span id = "DuckDB.Parser-368" > < a href = "#DuckDB.Parser-368" > < span class = "linenos" > 368< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-369" > < a href = "#DuckDB.Parser-369" > < span class = "linenos" > 369< / span > < / a > < span class = "s2" > " JSON" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ParseJSON< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-370" > < a href = "#DuckDB.Parser-370" > < span class = "linenos" > 370< / span > < / a > < span class = "s2" > " JSON_EXTRACT_PATH" < / span > < span class = "p" > :< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > build_extract_json_with_path< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-371" > < a href = "#DuckDB.Parser-371" > < span class = "linenos" > 371< / span > < / a > < span class = "s2" > " JSON_EXTRACT_STRING" < / span > < span class = "p" > :< / span > < span class = "n" > parser< / span > < span class = "o" > .< / span > < span class = "n" > build_extract_json_with_path< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtractScalar< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-372" > < a href = "#DuckDB.Parser-372" > < span class = "linenos" > 372< / span > < / a > < span class = "s2" > " LIST_HAS" < / 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 = "DuckDB.Parser-373" > < a href = "#DuckDB.Parser-373" > < span class = "linenos" > 373< / span > < / a > < span class = "s2" > " LIST_REVERSE_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > _build_sort_array_desc< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-374" > < a href = "#DuckDB.Parser-374" > < span class = "linenos" > 374< / span > < / a > < span class = "s2" > " LIST_SORT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-375" > < a href = "#DuckDB.Parser-375" > < span class = "linenos" > 375< / span > < / a > < span class = "s2" > " LIST_VALUE" < / 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" > Array< / span > < span class = "p" > (< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "n" > args< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-376" > < a href = "#DuckDB.Parser-376" > < span class = "linenos" > 376< / span > < / a > < span class = "s2" > " MAKE_TIME" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeFromParts< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-377" > < a href = "#DuckDB.Parser-377" > < span class = "linenos" > 377< / span > < / a > < span class = "s2" > " MAKE_TIMESTAMP" < / span > < span class = "p" > :< / span > < span class = "n" > _build_make_timestamp< / span > < span class = "p" > ,< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Parser-378" > < a href = "#DuckDB.Parser-378" > < span class = "linenos" > 378< / span > < / a > < span class = "s2" > " QUANTILE_CONT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileCont< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-379" > < a href = "#DuckDB.Parser-379" > < span class = "linenos" > 379< / span > < / a > < span class = "s2" > " QUANTILE_DISC" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileDisc< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-380" > < a href = "#DuckDB.Parser-380" > < span class = "linenos" > 380< / span > < / a > < span class = "s2" > " REGEXP_EXTRACT" < / span > < span class = "p" > :< / span > < span class = "n" > build_regexp_extract< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-381" > < a href = "#DuckDB.Parser-381" > < span class = "linenos" > 381< / span > < / a > < span class = "s2" > " REGEXP_MATCHES" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-382" > < a href = "#DuckDB.Parser-382" > < span class = "linenos" > 382< / 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 = "DuckDB.Parser-383" > < a href = "#DuckDB.Parser-383" > < span class = "linenos" > 383< / 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 = "DuckDB.Parser-384" > < a href = "#DuckDB.Parser-384" > < span class = "linenos" > 384< / 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 = "DuckDB.Parser-385" > < a href = "#DuckDB.Parser-385" > < span class = "linenos" > 385< / 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 > < span id = "DuckDB.Parser-386" > < a href = "#DuckDB.Parser-386" > < span class = "linenos" > 386< / span > < / a > < span class = "n" > modifiers< / 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 = "DuckDB.Parser-387" > < a href = "#DuckDB.Parser-387" > < span class = "linenos" > 387< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-388" > < a href = "#DuckDB.Parser-388" > < span class = "linenos" > 388< / span > < / a > < span class = "s2" > " STRFTIME" < / 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" > " duckdb" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-389" > < a href = "#DuckDB.Parser-389" > < span class = "linenos" > 389< / span > < / a > < span class = "s2" > " STRING_SPLIT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-390" > < a href = "#DuckDB.Parser-390" > < span class = "linenos" > 390< / span > < / a > < span class = "s2" > " STRING_SPLIT_REGEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-391" > < a href = "#DuckDB.Parser-391" > < span class = "linenos" > 391< / span > < / a > < span class = "s2" > " STRING_TO_ARRAY" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-392" > < a href = "#DuckDB.Parser-392" > < span class = "linenos" > 392< / span > < / a > < span class = "s2" > " STRPTIME" < / 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" > " duckdb" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-393" > < a href = "#DuckDB.Parser-393" > < span class = "linenos" > 393< / span > < / a > < span class = "s2" > " STRUCT_PACK" < / 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 = "DuckDB.Parser-394" > < a href = "#DuckDB.Parser-394" > < span class = "linenos" > 394< / span > < / a > < span class = "s2" > " STR_SPLIT" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-395" > < a href = "#DuckDB.Parser-395" > < span class = "linenos" > 395< / span > < / a > < span class = "s2" > " STR_SPLIT_REGEX" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-396" > < a href = "#DuckDB.Parser-396" > < span class = "linenos" > 396< / span > < / a > < span class = "s2" > " TO_TIMESTAMP" < / 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" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-397" > < a href = "#DuckDB.Parser-397" > < span class = "linenos" > 397< / span > < / a > < span class = "s2" > " UNNEST" < / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Explode< / span > < span class = "o" > .< / span > < span class = "n" > from_arg_list< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-398" > < a href = "#DuckDB.Parser-398" > < span class = "linenos" > 398< / span > < / a > < span class = "s2" > " 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 = "DuckDB.Parser-399" > < a href = "#DuckDB.Parser-399" > < span class = "linenos" > 399< / span > < / a > < span class = "s2" > " GENERATE_SERIES" < / span > < span class = "p" > :< / span > < span class = "n" > _build_generate_series< / span > < span class = "p" > (),< / span >
< / span > < span id = "DuckDB.Parser-400" > < a href = "#DuckDB.Parser-400" > < span class = "linenos" > 400< / span > < / a > < span class = "s2" > " RANGE" < / span > < span class = "p" > :< / span > < span class = "n" > _build_generate_series< / span > < span class = "p" > (< / span > < span class = "n" > end_exclusive< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-401" > < a href = "#DuckDB.Parser-401" > < span class = "linenos" > 401< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-402" > < a href = "#DuckDB.Parser-402" > < span class = "linenos" > 402< / span > < / a >
< / span > < span id = "DuckDB.Parser-403" > < a href = "#DuckDB.Parser-403" > < span class = "linenos" > 403< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " DATE_SUB" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-404" > < a href = "#DuckDB.Parser-404" > < span class = "linenos" > 404< / span > < / a > < span class = "n" > FUNCTIONS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " GLOB" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Parser-405" > < a href = "#DuckDB.Parser-405" > < span class = "linenos" > 405< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Parser-406" > < a href = "#DuckDB.Parser-406" > < span class = "linenos" > 406< / 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 = "DuckDB.Parser-407" > < a href = "#DuckDB.Parser-407" > < span class = "linenos" > 407< / span > < / a > < span class = "n" > FUNCTION_PARSERS< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > (< / span > < span class = "s2" > " DECODE" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Parser-408" > < a href = "#DuckDB.Parser-408" > < span class = "linenos" > 408< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Parser-409" > < a href = "#DuckDB.Parser-409" > < span class = "linenos" > 409< / span > < / a > < span class = "n" > NO_PAREN_FUNCTION_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-410" > < a href = "#DuckDB.Parser-410" > < span class = "linenos" > 410< / 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" > NO_PAREN_FUNCTION_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-411" > < a href = "#DuckDB.Parser-411" > < span class = "linenos" > 411< / span > < / a > < span class = "s2" > " MAP" < / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_map< / span > < span class = "p" > (),< / span >
< / span > < span id = "DuckDB.Parser-412" > < a href = "#DuckDB.Parser-412" > < span class = "linenos" > 412< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-413" > < a href = "#DuckDB.Parser-413" > < span class = "linenos" > 413< / span > < / a >
< / span > < span id = "DuckDB.Parser-414" > < a href = "#DuckDB.Parser-414" > < span class = "linenos" > 414< / span > < / a > < span class = "n" > TABLE_ALIAS_TOKENS< / 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" > TABLE_ALIAS_TOKENS< / span > < span class = "o" > -< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-415" > < a href = "#DuckDB.Parser-415" > < span class = "linenos" > 415< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > SEMI< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-416" > < a href = "#DuckDB.Parser-416" > < span class = "linenos" > 416< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > ANTI< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-417" > < a href = "#DuckDB.Parser-417" > < span class = "linenos" > 417< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-418" > < a href = "#DuckDB.Parser-418" > < span class = "linenos" > 418< / span > < / a >
< / span > < span id = "DuckDB.Parser-419" > < a href = "#DuckDB.Parser-419" > < span class = "linenos" > 419< / span > < / a > < span class = "n" > PLACEHOLDER_PARSERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-420" > < a href = "#DuckDB.Parser-420" > < span class = "linenos" > 420< / 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" > PLACEHOLDER_PARSERS< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Parser-421" > < a href = "#DuckDB.Parser-421" > < span class = "linenos" > 421< / span > < / a > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > PARAMETER< / span > < span class = "p" > :< / span > < span class = "k" > lambda< / span > < span class = "bp" > self< / span > < span class = "p" > :< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Parser-422" > < a href = "#DuckDB.Parser-422" > < span class = "linenos" > 422< / span > < / a > < span class = "bp" > self< / 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" > Placeholder< / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _prev< / span > < span class = "o" > .< / span > < span class = "n" > text< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-423" > < a href = "#DuckDB.Parser-423" > < span class = "linenos" > 423< / span > < / a > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > NUMBER< / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match_set< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > ID_VAR_TOKENS< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-424" > < a href = "#DuckDB.Parser-424" > < span class = "linenos" > 424< / span > < / a > < span class = "k" > else< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB.Parser-425" > < a href = "#DuckDB.Parser-425" > < span class = "linenos" > 425< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-426" > < a href = "#DuckDB.Parser-426" > < span class = "linenos" > 426< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-427" > < a href = "#DuckDB.Parser-427" > < span class = "linenos" > 427< / span > < / a >
< / span > < span id = "DuckDB.Parser-428" > < a href = "#DuckDB.Parser-428" > < span class = "linenos" > 428< / span > < / a > < span class = "n" > TYPE_CONVERTERS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Parser-429" > < a href = "#DuckDB.Parser-429" > < span class = "linenos" > 429< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/data_types/numeric< / span >
< / span > < span id = "DuckDB.Parser-430" > < a href = "#DuckDB.Parser-430" > < span class = "linenos" > 430< / 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" > DECIMAL< / span > < span class = "p" > :< / span > < span class = "n" > build_default_decimal_type< / span > < span class = "p" > (< / span > < span class = "n" > precision< / span > < span class = "o" > =< / span > < span class = "mi" > 18< / span > < span class = "p" > ,< / span > < span class = "n" > scale< / span > < span class = "o" > =< / span > < span class = "mi" > 3< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-431" > < a href = "#DuckDB.Parser-431" > < span class = "linenos" > 431< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/data_types/text< / span >
< / span > < span id = "DuckDB.Parser-432" > < a href = "#DuckDB.Parser-432" > < span class = "linenos" > 432< / 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 = "k" > lambda< / span > < span class = "n" > dtype< / 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" > build< / span > < span class = "p" > (< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Parser-433" > < a href = "#DuckDB.Parser-433" > < span class = "linenos" > 433< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Parser-434" > < a href = "#DuckDB.Parser-434" > < span class = "linenos" > 434< / span > < / a >
< / span > < span id = "DuckDB.Parser-435" > < a href = "#DuckDB.Parser-435" > < span class = "linenos" > 435< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_table_sample< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > as_modifier< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > TableSample< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB.Parser-436" > < a href = "#DuckDB.Parser-436" > < span class = "linenos" > 436< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/samples.html< / span >
< / span > < span id = "DuckDB.Parser-437" > < a href = "#DuckDB.Parser-437" > < span class = "linenos" > 437< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _parse_table_sample< / span > < span class = "p" > (< / span > < span class = "n" > as_modifier< / span > < span class = "o" > =< / span > < span class = "n" > as_modifier< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-438" > < a href = "#DuckDB.Parser-438" > < span class = "linenos" > 438< / span > < / a > < span class = "k" > if< / span > < span class = "n" > sample< / span > < span class = "ow" > and< / span > < span class = "ow" > not< / span > < span class = "n" > sample< / 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" > " method" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Parser-439" > < a href = "#DuckDB.Parser-439" > < span class = "linenos" > 439< / span > < / a > < span class = "k" > if< / span > < span class = "n" > sample< / 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" > " size" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Parser-440" > < a href = "#DuckDB.Parser-440" > < span class = "linenos" > 440< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Parser-441" > < a href = "#DuckDB.Parser-441" > < span class = "linenos" > 441< / span > < / a > < span class = "k" > else< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Parser-442" > < a href = "#DuckDB.Parser-442" > < span class = "linenos" > 442< / span > < / a > < span class = "n" > sample< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " SYSTEM" < / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Parser-443" > < a href = "#DuckDB.Parser-443" > < span class = "linenos" > 443< / span > < / a >
< / span > < span id = "DuckDB.Parser-444" > < a href = "#DuckDB.Parser-444" > < span class = "linenos" > 444< / span > < / a > < span class = "k" > return< / span > < span class = "n" > sample< / span >
< / span > < span id = "DuckDB.Parser-445" > < a href = "#DuckDB.Parser-445" > < span class = "linenos" > 445< / span > < / a >
< / span > < span id = "DuckDB.Parser-446" > < a href = "#DuckDB.Parser-446" > < span class = "linenos" > 446< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_bracket< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Parser-447" > < a href = "#DuckDB.Parser-447" > < span class = "linenos" > 447< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > this< / 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" > Expression< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB.Parser-448" > < a href = "#DuckDB.Parser-448" > < span class = "linenos" > 448< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB.Parser-449" > < a href = "#DuckDB.Parser-449" > < span class = "linenos" > 449< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _parse_bracket< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-450" > < a href = "#DuckDB.Parser-450" > < span class = "linenos" > 450< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > bracket< / 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 = "DuckDB.Parser-451" > < a href = "#DuckDB.Parser-451" > < span class = "linenos" > 451< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " returns_list_for_maps" < / span > < span class = "p" > ,< / span > < span class = "kc" > True< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-452" > < a href = "#DuckDB.Parser-452" > < span class = "linenos" > 452< / span > < / a >
< / span > < span id = "DuckDB.Parser-453" > < a href = "#DuckDB.Parser-453" > < span class = "linenos" > 453< / span > < / a > < span class = "k" > return< / span > < span class = "n" > bracket< / span >
< / span > < span id = "DuckDB.Parser-454" > < a href = "#DuckDB.Parser-454" > < span class = "linenos" > 454< / span > < / a >
< / span > < span id = "DuckDB.Parser-455" > < a href = "#DuckDB.Parser-455" > < span class = "linenos" > 455< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_map< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ToMap< / span > < span class = "o" > |< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Map< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Parser-456" > < a href = "#DuckDB.Parser-456" > < span class = "linenos" > 456< / span > < / a > < span class = "k" > if< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _match< / span > < span class = "p" > (< / span > < span class = "n" > TokenType< / span > < span class = "o" > .< / span > < span class = "n" > L_BRACE< / span > < span class = "p" > ,< / span > < span class = "n" > advance< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Parser-457" > < a href = "#DuckDB.Parser-457" > < span class = "linenos" > 457< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / 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" > ToMap< / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_bracket< / span > < span class = "p" > ())< / span >
< / span > < span id = "DuckDB.Parser-458" > < a href = "#DuckDB.Parser-458" > < span class = "linenos" > 458< / span > < / a >
< / span > < span id = "DuckDB.Parser-459" > < a href = "#DuckDB.Parser-459" > < span class = "linenos" > 459< / span > < / a > < span class = "n" > args< / span > < span class = "o" > =< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_wrapped_csv< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_assignment< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-460" > < a href = "#DuckDB.Parser-460" > < span class = "linenos" > 460< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / 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" > Map< / span > < span class = "p" > ,< / span > < span class = "n" > keys< / 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" > values< / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Parser-461" > < a href = "#DuckDB.Parser-461" > < span class = "linenos" > 461< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Parser-462" > < a href = "#DuckDB.Parser-462" > < span class = "linenos" > 462< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _parse_struct_types< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > type_required< / span > < span class = "p" > :< / span > < span class = "nb" > bool< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > )< / span > < span class = "o" > -> < / 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" > Expression< / span > < span class = "p" > ]:< / span >
< / span > < span id = "DuckDB.Parser-463" > < a href = "#DuckDB.Parser-463" > < span class = "linenos" > 463< / span > < / a > < span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > _parse_field_def< / span > < span class = "p" > ()< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Parser-464" > < a href = "#DuckDB.Parser-464" > < span class = "linenos" > 464< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Parser-465" > < a href = "#DuckDB.Parser-465" > < span class = "linenos" > 465< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > _pivot_column_names< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ,< / span > < span class = "n" > aggregations< / 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 = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Expression< / span > < 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 = "DuckDB.Parser-466" > < a href = "#DuckDB.Parser-466" > < span class = "linenos" > 466< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > len< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > )< / span > < span class = "o" > ==< / span > < span class = "mi" > 1< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Parser-467" > < a href = "#DuckDB.Parser-467" > < span class = "linenos" > 467< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > _pivot_column_names< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Parser-468" > < a href = "#DuckDB.Parser-468" > < span class = "linenos" > 468< / span > < / a > < span class = "k" > return< / span > < span class = "n" > pivot_column_names< / span > < span class = "p" > (< / span > < span class = "n" > aggregations< / span > < span class = "p" > ,< / span > < span class = "n" > dialect< / span > < span class = "o" > =< / span > < span class = "s2" > " duckdb" < / 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 20:46:55 +01:00
< div id = "DuckDB.Parser.BITWISE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > BITWISE< / span > =
< input id = "DuckDB.Parser.BITWISE-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 = "DuckDB.Parser.BITWISE-view-value" > < / label > < span class = "default_value" > {< TokenType.AMP: ' AMP' > : < class ' < a href = "../expressions.html#BitwiseAnd" > sqlglot.expressions.BitwiseAnd< / a > ' > , < TokenType.PIPE: ' PIPE' > : < class ' < a href = "../expressions.html#BitwiseOr" > sqlglot.expressions.BitwiseOr< / a > ' > , < TokenType.TILDA: ' TILDA' > : < class ' < a href = "../expressions.html#RegexpLike" > sqlglot.expressions.RegexpLike< / a > ' > }< / span >
2025-02-13 20:46:55 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.BITWISE" > < / a >
2025-02-13 21:55:40 +01:00
< / div >
< div id = "DuckDB.Parser.RANGE_PARSERS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > RANGE_PARSERS< / span > =
< input id = "DuckDB.Parser.RANGE_PARSERS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "DuckDB.Parser.RANGE_PARSERS-view-value" > < / label > < span class = "default_value" > {< TokenType.AT_GT: ' AT_GT' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.BETWEEN: ' BETWEEN' > : < function Parser.< lambda> > , < TokenType.GLOB: ' GLOB' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.ILIKE: ' ILIKE' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.IN: ' IN' > : < function Parser.< lambda> > , < TokenType.IRLIKE: ' IRLIKE' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.IS: ' IS' > : < function Parser.< lambda> > , < TokenType.LIKE: ' LIKE' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.LT_AT: ' LT_AT' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.OVERLAPS: ' OVERLAPS' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.RLIKE: ' RLIKE' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.SIMILAR_TO: ' SIMILAR_TO' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.FOR: ' FOR' > : < function Parser.< lambda> > , < TokenType.DAMP: ' DAMP' > : < function binary_range_parser.< locals> ._parse_binary_range> , < TokenType.CARET_AT: ' CARET_AT' > : < function binary_range_parser.< locals> ._parse_binary_range> }< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.RANGE_PARSERS" > < / a >
< / div >
< div id = "DuckDB.Parser.EXPONENT" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > EXPONENT< / span > =
< input id = "DuckDB.Parser.EXPONENT-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "DuckDB.Parser.EXPONENT-view-value" > < / label > < span class = "default_value" > {< TokenType.CARET: ' CARET' > : < class ' < a href = "../expressions.html#Pow" > sqlglot.expressions.Pow< / a > ' > , < TokenType.DSTAR: ' DSTAR' > : < class ' < a href = "../expressions.html#Pow" > sqlglot.expressions.Pow< / a > ' > }< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.EXPONENT" > < / a >
2025-02-13 21:29:39 +01:00
< / div >
< div id = "DuckDB.Parser.FUNCTIONS_WITH_ALIASED_ARGS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > FUNCTIONS_WITH_ALIASED_ARGS< / span > =
2025-02-13 21:56:02 +01:00
< span class = "default_value" > {' STRUCT_PACK' , ' STRUCT' }< / span >
2025-02-13 21:29:39 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.FUNCTIONS_WITH_ALIASED_ARGS" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.Parser.FUNCTIONS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > FUNCTIONS< / span > =
< input id = "DuckDB.Parser.FUNCTIONS-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 = "DuckDB.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 = "#DuckDB.Parser.FUNCTIONS" > < / a >
2025-02-13 20:51:40 +01:00
< / div >
< div id = "DuckDB.Parser.FUNCTION_PARSERS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > FUNCTION_PARSERS< / span > =
< input id = "DuckDB.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 = "DuckDB.Parser.FUNCTION_PARSERS-view-value" > < / label > < span class = "default_value" > {' CAST' : < function Parser.< lambda> > , ' CONVERT' : < 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> > , ' TRIM' : < function Parser.< lambda> > , ' TRY_CAST' : < function Parser.< lambda> > , ' TRY_CONVERT' : < function Parser.< lambda> > }< / span >
2025-02-13 20:51:40 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.FUNCTION_PARSERS" > < / a >
2025-02-13 21:30:28 +01:00
< / div >
< div id = "DuckDB.Parser.NO_PAREN_FUNCTION_PARSERS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > NO_PAREN_FUNCTION_PARSERS< / span > =
< input id = "DuckDB.Parser.NO_PAREN_FUNCTION_PARSERS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:41:14 +01:00
< label class = "view-value-button pdoc-button" for = "DuckDB.Parser.NO_PAREN_FUNCTION_PARSERS-view-value" > < / label > < span class = "default_value" > {' ANY' : < function Parser.< lambda> > , ' CASE' : < function Parser.< lambda> > , ' CONNECT_BY_ROOT' : < function Parser.< lambda> > , ' IF' : < function Parser.< lambda> > , ' NEXT' : < function Parser.< lambda> > , ' MAP' : < function < a href = "#DuckDB.Parser" > DuckDB.Parser< / a > .< lambda> > }< / span >
2025-02-13 21:30:28 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.NO_PAREN_FUNCTION_PARSERS" > < / a >
2025-02-13 21:03:38 +01:00
< / div >
< div id = "DuckDB.Parser.TABLE_ALIAS_TOKENS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TABLE_ALIAS_TOKENS< / span > =
< input id = "DuckDB.Parser.TABLE_ALIAS_TOKENS-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 = "DuckDB.Parser.TABLE_ALIAS_TOKENS-view-value" > < / label > < span class = "default_value" > {< TokenType.PERCENT: ' PERCENT' > , < TokenType.ISNULL: ' ISNULL' > , < TokenType.IS: ' IS' > , < TokenType.VIEW: ' VIEW' > , < TokenType.UTINYINT: ' UTINYINT' > , < TokenType.JSON: ' JSON' > , < TokenType.SMALLSERIAL: ' SMALLSERIAL' > , < TokenType.TIMESTAMP_NS: ' TIMESTAMP_NS' > , < TokenType.INT: ' INT' > , < TokenType.MULTIPOLYGON: ' MULTIPOLYGON' > , < TokenType.INT8RANGE: ' INT8RANGE' > , < TokenType.TDIGEST: ' TDIGEST' > , < TokenType.FALSE: ' FALSE' > , < TokenType.KEEP: ' KEEP' > , < TokenType.ENUM: ' ENUM' > , < TokenType.NULL: ' NULL' > , < TokenType.TAG: ' TAG' > , < TokenType.FLOAT: ' FLOAT' > , < TokenType.LONGBLOB: ' LONGBLOB' > , < TokenType.ALL: ' ALL' > , < TokenType.IPV6: ' IPV6' > , < TokenType.INTERVAL: ' INTERVAL' > , < TokenType.BIGDECIMAL: ' BIGDECIMAL' > , < TokenType.MEDIUMINT: ' MEDIUMINT' > , < TokenType.FINAL: ' FINAL' > , < TokenType.XML: ' XML' > , < TokenType.PIVOT: ' PIVOT' > , < TokenType.OPERATOR: ' OPERATOR' > , < TokenType.VARCHAR: ' VARCHAR' > , < TokenType.ROWVERSION: ' ROWVERSION' > , < TokenType.RANGE: ' RANGE' > , < TokenType.UDECIMAL: ' UDECIMAL' > , < TokenType.VARBINARY: ' VARBINARY' > , < TokenType.FILTER: ' FILTER' > , < TokenType.DELETE: ' DELETE' > , < TokenType.TIMESTAMP_S: ' TIMESTAMP_S' > , < TokenType.OBJECT_IDENTIFIER: ' OBJECT_IDENTIFIER' > , < TokenType.DECIMAL128: ' DECIMAL128' > , < TokenType.DOUBLE: ' DOUBLE' > , < TokenType.OVERLAPS: ' OVERLAPS' > , < TokenType.VECTOR: ' VECTOR' > , < TokenType.NULLABLE: ' NULLABLE' > , < TokenType.STORAGE_INTEGRATION: ' STORAGE_INTEGRATION' > , < TokenType.USERDEFINED: ' USERDEFINED' > , < TokenType.REFRESH: ' REFRESH' > , < TokenType.FUNCTION: ' FUNCTION' > , < TokenType.ORDINALITY: ' ORDINALITY' > , < TokenType.IPPREFIX: ' IPPREFIX' > , < TokenType.ENUM8: ' ENUM8' > , < TokenType.BINARY: ' BINARY' > , < TokenType.HSTORE: ' HSTORE' > , < TokenType.UNIQUEIDENTIFIER: ' UNIQUEIDENTIFIER' > , < TokenType.END: ' END' > , < TokenType.COMMENT: ' COMMENT' > , < TokenType.TIMESTAMP: ' TIMESTAMP' > , < TokenType.MEDIUMBLOB: ' MEDIUMBLOB' > , < TokenType.TINYBLOB: ' TINYBLOB' > , < TokenType.ASC: ' ASC' > , < TokenType.DECIMAL256: ' DECIMAL256' > , < TokenType.RING: ' RING' > , < TokenType.SMALLMONEY: ' SMALLMONEY' > , < TokenType.SIMPLEAGGREGATEFUNCTION: ' SIMPLEAGGREGATEFUNCTION' > , < TokenType.UNPIVOT: ' UNPIVOT' > , < TokenType.NUMRANGE: ' NUMRANGE' > , < TokenType.CASE: ' CASE' > , < TokenType.LONGTEXT: ' LONGTEXT' > , < TokenType.DATETIME: ' DATETIME' > , < TokenType.DATE: ' DATE' > , < TokenType.DATETIME64: ' DATETIME64' > , < TokenType.RECURSIVE: ' RECURSIVE' > , < TokenType.PRAGMA: ' PRAGMA' > , < TokenType.INT4MULTIRANGE: ' INT4MULTIRANGE' > , < TokenType.INT256: ' INT256' > , < TokenType.UINT: ' UINT' > , < TokenType.COMMIT: ' COMMIT' > , < TokenType.SEQUENCE: ' SEQUENCE' > , < TokenType.SET: ' SET' > , < TokenType.RENAME: ' RENAME' > , < TokenType.ARRAY: ' ARRAY' > , < TokenType.SUPER: ' SUPER' > , < TokenType.YEAR: ' YEAR' > , < TokenType.IDENTIFIER: ' IDENTIFIER' > , < TokenType.STREAMLIT: ' STREAMLIT' > , < TokenType.CURRENT_DATETIME: ' CURRENT_DATETIME' & gt
2025-02-13 21:03:38 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.TABLE_ALIAS_TOKENS" > < / a >
2025-02-13 21:19:14 +01:00
< / div >
< div id = "DuckDB.Parser.PLACEHOLDER_PARSERS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > PLACEHOLDER_PARSERS< / span > =
< input id = "DuckDB.Parser.PLACEHOLDER_PARSERS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "DuckDB.Parser.PLACEHOLDER_PARSERS-view-value" > < / label > < span class = "default_value" > {< TokenType.PLACEHOLDER: ' PLACEHOLDER' > : < function Parser.< lambda> > , < TokenType.PARAMETER: ' PARAMETER' > : < function < a href = "#DuckDB.Parser" > DuckDB.Parser< / a > .< lambda> > , < TokenType.COLON: ' COLON' > : < function Parser.< lambda> > }< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.PLACEHOLDER_PARSERS" > < / a >
2025-02-13 21:35:32 +01:00
< / div >
2025-02-13 21:41:14 +01:00
< div id = "DuckDB.Parser.TYPE_CONVERTERS" class = "classattr" >
2025-02-13 21:35:32 +01:00
< div class = "attr variable" >
2025-02-13 21:41:14 +01:00
< span class = "name" > TYPE_CONVERTERS< / span > =
< input id = "DuckDB.Parser.TYPE_CONVERTERS-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< label class = "view-value-button pdoc-button" for = "DuckDB.Parser.TYPE_CONVERTERS-view-value" > < / label > < span class = "default_value" > {< Type.DECIMAL: ' DECIMAL' > : < function build_default_decimal_type.< locals> ._builder> , < Type.TEXT: ' TEXT' > : < function < a href = "#DuckDB.Parser" > DuckDB.Parser< / a > .< lambda> > }< / span >
2025-02-13 21:35:32 +01:00
< / div >
2025-02-13 21:41:14 +01:00
< a class = "headerlink" href = "#DuckDB.Parser.TYPE_CONVERTERS" > < / a >
< / div >
< div id = "DuckDB.Parser.ID_VAR_TOKENS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > ID_VAR_TOKENS< / span > =
< input id = "DuckDB.Parser.ID_VAR_TOKENS-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 = "DuckDB.Parser.ID_VAR_TOKENS-view-value" > < / label > < span class = "default_value" > {< TokenType.PERCENT: ' PERCENT' > , < TokenType.ISNULL: ' ISNULL' > , < TokenType.IS: ' IS' > , < TokenType.VIEW: ' VIEW' > , < TokenType.UTINYINT: ' UTINYINT' > , < TokenType.JSON: ' JSON' > , < TokenType.SMALLSERIAL: ' SMALLSERIAL' > , < TokenType.TIMESTAMP_NS: ' TIMESTAMP_NS' > , < TokenType.INT: ' INT' > , < TokenType.MULTIPOLYGON: ' MULTIPOLYGON' > , < TokenType.INT8RANGE: ' INT8RANGE' > , < TokenType.TDIGEST: ' TDIGEST' > , < TokenType.FALSE: ' FALSE' > , < TokenType.KEEP: ' KEEP' > , < TokenType.ENUM: ' ENUM' > , < TokenType.NULL: ' NULL' > , < TokenType.TAG: ' TAG' > , < TokenType.FLOAT: ' FLOAT' > , < TokenType.LONGBLOB: ' LONGBLOB' > , < TokenType.ALL: ' ALL' > , < TokenType.IPV6: ' IPV6' > , < TokenType.INTERVAL: ' INTERVAL' > , < TokenType.BIGDECIMAL: ' BIGDECIMAL' > , < TokenType.MEDIUMINT: ' MEDIUMINT' > , < TokenType.FINAL: ' FINAL' > , < TokenType.XML: ' XML' > , < TokenType.PIVOT: ' PIVOT' > , < TokenType.OPERATOR: ' OPERATOR' > , < TokenType.VARCHAR: ' VARCHAR' > , < TokenType.ROWVERSION: ' ROWVERSION' > , < TokenType.RANGE: ' RANGE' > , < TokenType.UDECIMAL: ' UDECIMAL' > , < TokenType.VARBINARY: ' VARBINARY' > , < TokenType.FILTER: ' FILTER' > , < TokenType.DELETE: ' DELETE' > , < TokenType.TIMESTAMP_S: ' TIMESTAMP_S' > , < TokenType.OBJECT_IDENTIFIER: ' OBJECT_IDENTIFIER' > , < TokenType.DECIMAL128: ' DECIMAL128' > , < TokenType.DOUBLE: ' DOUBLE' > , < TokenType.OVERLAPS: ' OVERLAPS' > , < TokenType.VECTOR: ' VECTOR' > , < TokenType.NULLABLE: ' NULLABLE' > , < TokenType.STORAGE_INTEGRATION: ' STORAGE_INTEGRATION' > , < TokenType.USERDEFINED: ' USERDEFINED' > , < TokenType.REFRESH: ' REFRESH' > , < TokenType.FUNCTION: ' FUNCTION' > , < TokenType.ORDINALITY: ' ORDINALITY' > , < TokenType.IPPREFIX: ' IPPREFIX' > , < TokenType.ENUM8: ' ENUM8' > , < TokenType.BINARY: ' BINARY' > , < TokenType.HSTORE: ' HSTORE' > , < TokenType.UNIQUEIDENTIFIER: ' UNIQUEIDENTIFIER' > , < TokenType.END: ' END' > , < TokenType.COMMENT: ' COMMENT' > , < TokenType.TIMESTAMP: ' TIMESTAMP' > , < TokenType.MEDIUMBLOB: ' MEDIUMBLOB' > , < TokenType.SEMI: ' SEMI' > , < TokenType.TINYBLOB: ' TINYBLOB' > , < TokenType.ASC: ' ASC' > , < TokenType.DECIMAL256: ' DECIMAL256' > , < TokenType.RING: ' RING' > , < TokenType.SMALLMONEY: ' SMALLMONEY' > , < TokenType.SIMPLEAGGREGATEFUNCTION: ' SIMPLEAGGREGATEFUNCTION' > , < TokenType.UNPIVOT: ' UNPIVOT' > , < TokenType.NUMRANGE: ' NUMRANGE' > , < TokenType.CASE: ' CASE' > , < TokenType.LONGTEXT: ' LONGTEXT' > , < TokenType.DATETIME: ' DATETIME' > , < TokenType.DATE: ' DATE' > , < TokenType.DATETIME64: ' DATETIME64' > , < TokenType.RECURSIVE: ' RECURSIVE' > , < TokenType.PRAGMA: ' PRAGMA' > , < TokenType.INT4MULTIRANGE: ' INT4MULTIRANGE' > , < TokenType.INT256: ' INT256' > , < TokenType.UINT: ' UINT' > , < TokenType.COMMIT: ' COMMIT' > , < TokenType.SEQUENCE: ' SEQUENCE' > , < TokenType.SET: ' SET' > , < TokenType.RENAME: ' RENAME' > , < TokenType.ARRAY: ' ARRAY' > , < TokenType.SUPER: ' SUPER' > , < TokenType.YEAR: ' YEAR' > , < TokenType.LEFT: ' LEFT' > , < TokenType.IDENTIFIER: ' IDENTIFIER' > , < TokenType.STREAMLIT: ' STREAM
2025-02-13 21:41:14 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Parser.ID_VAR_TOKENS" > < / a >
2025-02-13 21:35:32 +01:00
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Parser.SHOW_TRIE" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.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 = "DuckDB.Parser.__init__" class = "function" > < a href = "../parser.html#Parser.__init__" > Parser< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.NESTED_TYPE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.NESTED_TYPE_TOKENS" > NESTED_TYPE_TOKENS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.AGGREGATE_TYPE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.AGGREGATE_TYPE_TOKENS" > AGGREGATE_TYPE_TOKENS< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.DB_CREATABLES" class = "variable" > < a href = "../parser.html#Parser.DB_CREATABLES" > DB_CREATABLES< / a > < / dd >
< dd id = "DuckDB.Parser.CREATABLES" class = "variable" > < a href = "../parser.html#Parser.CREATABLES" > CREATABLES< / a > < / dd >
2025-02-13 21:52:32 +01:00
< dd id = "DuckDB.Parser.ALTERABLES" class = "variable" > < a href = "../parser.html#Parser.ALTERABLES" > ALTERABLES< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.COMMENT_TABLE_ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.COMMENT_TABLE_ALIAS_TOKENS" > COMMENT_TABLE_ALIAS_TOKENS< / a > < / dd >
< dd id = "DuckDB.Parser.UPDATE_ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.UPDATE_ALIAS_TOKENS" > UPDATE_ALIAS_TOKENS< / a > < / dd >
< dd id = "DuckDB.Parser.TRIM_TYPES" class = "variable" > < a href = "../parser.html#Parser.TRIM_TYPES" > TRIM_TYPES< / a > < / dd >
< dd id = "DuckDB.Parser.FUNC_TOKENS" class = "variable" > < a href = "../parser.html#Parser.FUNC_TOKENS" > FUNC_TOKENS< / a > < / dd >
< dd id = "DuckDB.Parser.CONJUNCTION" class = "variable" > < a href = "../parser.html#Parser.CONJUNCTION" > CONJUNCTION< / a > < / dd >
2025-02-13 21:37:40 +01:00
< dd id = "DuckDB.Parser.ASSIGNMENT" class = "variable" > < a href = "../parser.html#Parser.ASSIGNMENT" > ASSIGNMENT< / a > < / dd >
< dd id = "DuckDB.Parser.DISJUNCTION" class = "variable" > < a href = "../parser.html#Parser.DISJUNCTION" > DISJUNCTION< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Parser.EQUALITY" class = "variable" > < a href = "../parser.html#Parser.EQUALITY" > EQUALITY< / a > < / dd >
< dd id = "DuckDB.Parser.COMPARISON" class = "variable" > < a href = "../parser.html#Parser.COMPARISON" > COMPARISON< / a > < / dd >
< dd id = "DuckDB.Parser.TERM" class = "variable" > < a href = "../parser.html#Parser.TERM" > TERM< / a > < / dd >
< dd id = "DuckDB.Parser.FACTOR" class = "variable" > < a href = "../parser.html#Parser.FACTOR" > FACTOR< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "DuckDB.Parser.TIMES" class = "variable" > < a href = "../parser.html#Parser.TIMES" > TIMES< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Parser.TIMESTAMPS" class = "variable" > < a href = "../parser.html#Parser.TIMESTAMPS" > TIMESTAMPS< / a > < / dd >
< dd id = "DuckDB.Parser.SET_OPERATIONS" class = "variable" > < a href = "../parser.html#Parser.SET_OPERATIONS" > SET_OPERATIONS< / a > < / dd >
< dd id = "DuckDB.Parser.JOIN_METHODS" class = "variable" > < a href = "../parser.html#Parser.JOIN_METHODS" > JOIN_METHODS< / a > < / dd >
< dd id = "DuckDB.Parser.JOIN_SIDES" class = "variable" > < a href = "../parser.html#Parser.JOIN_SIDES" > JOIN_SIDES< / a > < / dd >
< dd id = "DuckDB.Parser.JOIN_KINDS" class = "variable" > < a href = "../parser.html#Parser.JOIN_KINDS" > JOIN_KINDS< / a > < / dd >
< dd id = "DuckDB.Parser.JOIN_HINTS" class = "variable" > < a href = "../parser.html#Parser.JOIN_HINTS" > JOIN_HINTS< / a > < / dd >
< dd id = "DuckDB.Parser.LAMBDAS" class = "variable" > < a href = "../parser.html#Parser.LAMBDAS" > LAMBDAS< / a > < / dd >
< dd id = "DuckDB.Parser.COLUMN_OPERATORS" class = "variable" > < a href = "../parser.html#Parser.COLUMN_OPERATORS" > COLUMN_OPERATORS< / a > < / dd >
< dd id = "DuckDB.Parser.EXPRESSION_PARSERS" class = "variable" > < a href = "../parser.html#Parser.EXPRESSION_PARSERS" > EXPRESSION_PARSERS< / a > < / dd >
< dd id = "DuckDB.Parser.STATEMENT_PARSERS" class = "variable" > < a href = "../parser.html#Parser.STATEMENT_PARSERS" > STATEMENT_PARSERS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.STRING_PARSERS" class = "variable" > < a href = "../parser.html#Parser.STRING_PARSERS" > STRING_PARSERS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.PRIMARY_PARSERS" class = "variable" > < a href = "../parser.html#Parser.PRIMARY_PARSERS" > PRIMARY_PARSERS< / a > < / dd >
< dd id = "DuckDB.Parser.PROPERTY_PARSERS" class = "variable" > < a href = "../parser.html#Parser.PROPERTY_PARSERS" > PROPERTY_PARSERS< / a > < / dd >
< dd id = "DuckDB.Parser.CONSTRAINT_PARSERS" class = "variable" > < a href = "../parser.html#Parser.CONSTRAINT_PARSERS" > CONSTRAINT_PARSERS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.SCHEMA_UNNAMED_CONSTRAINTS" class = "variable" > < a href = "../parser.html#Parser.SCHEMA_UNNAMED_CONSTRAINTS" > SCHEMA_UNNAMED_CONSTRAINTS< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "DuckDB.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 21:29:39 +01:00
< dd id = "DuckDB.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 = "DuckDB.Parser.QUERY_MODIFIER_PARSERS" class = "variable" > < a href = "../parser.html#Parser.QUERY_MODIFIER_PARSERS" > QUERY_MODIFIER_PARSERS< / a > < / dd >
< dd id = "DuckDB.Parser.SET_PARSERS" class = "variable" > < a href = "../parser.html#Parser.SET_PARSERS" > SET_PARSERS< / a > < / dd >
< dd id = "DuckDB.Parser.SHOW_PARSERS" class = "variable" > < a href = "../parser.html#Parser.SHOW_PARSERS" > SHOW_PARSERS< / a > < / dd >
< dd id = "DuckDB.Parser.TYPE_LITERAL_PARSERS" class = "variable" > < a href = "../parser.html#Parser.TYPE_LITERAL_PARSERS" > TYPE_LITERAL_PARSERS< / a > < / dd >
< dd id = "DuckDB.Parser.DDL_SELECT_TOKENS" class = "variable" > < a href = "../parser.html#Parser.DDL_SELECT_TOKENS" > DDL_SELECT_TOKENS< / a > < / dd >
< dd id = "DuckDB.Parser.PRE_VOLATILE_TOKENS" class = "variable" > < a href = "../parser.html#Parser.PRE_VOLATILE_TOKENS" > PRE_VOLATILE_TOKENS< / a > < / dd >
< dd id = "DuckDB.Parser.TRANSACTION_KIND" class = "variable" > < a href = "../parser.html#Parser.TRANSACTION_KIND" > TRANSACTION_KIND< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.CONFLICT_ACTIONS" class = "variable" > < a href = "../parser.html#Parser.CONFLICT_ACTIONS" > CONFLICT_ACTIONS< / a > < / dd >
< dd id = "DuckDB.Parser.CREATE_SEQUENCE" class = "variable" > < a href = "../parser.html#Parser.CREATE_SEQUENCE" > CREATE_SEQUENCE< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.USABLES" class = "variable" > < a href = "../parser.html#Parser.USABLES" > USABLES< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.PROCEDURE_OPTIONS" class = "variable" > < a href = "../parser.html#Parser.PROCEDURE_OPTIONS" > PROCEDURE_OPTIONS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.WINDOW_ALIAS_TOKENS" class = "variable" > < a href = "../parser.html#Parser.WINDOW_ALIAS_TOKENS" > WINDOW_ALIAS_TOKENS< / a > < / dd >
< dd id = "DuckDB.Parser.WINDOW_BEFORE_PAREN_TOKENS" class = "variable" > < a href = "../parser.html#Parser.WINDOW_BEFORE_PAREN_TOKENS" > WINDOW_BEFORE_PAREN_TOKENS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.IS_JSON_PREDICATE_KIND" class = "variable" > < a href = "../parser.html#Parser.IS_JSON_PREDICATE_KIND" > IS_JSON_PREDICATE_KIND< / a > < / dd >
< dd id = "DuckDB.Parser.ODBC_DATETIME_LITERALS" class = "variable" > < a href = "../parser.html#Parser.ODBC_DATETIME_LITERALS" > ODBC_DATETIME_LITERALS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.DESCRIBE_STYLES" class = "variable" > < a href = "../parser.html#Parser.DESCRIBE_STYLES" > DESCRIBE_STYLES< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.STRICT_CAST" class = "variable" > < a href = "../parser.html#Parser.STRICT_CAST" > STRICT_CAST< / a > < / dd >
< dd id = "DuckDB.Parser.PREFIXED_PIVOT_COLUMNS" class = "variable" > < a href = "../parser.html#Parser.PREFIXED_PIVOT_COLUMNS" > PREFIXED_PIVOT_COLUMNS< / a > < / dd >
< dd id = "DuckDB.Parser.IDENTIFY_PIVOT_STRINGS" class = "variable" > < a href = "../parser.html#Parser.IDENTIFY_PIVOT_STRINGS" > IDENTIFY_PIVOT_STRINGS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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:28:36 +01:00
< dd id = "DuckDB.Parser.VALUES_FOLLOWED_BY_PAREN" class = "variable" > < a href = "../parser.html#Parser.VALUES_FOLLOWED_BY_PAREN" > VALUES_FOLLOWED_BY_PAREN< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Parser.error_level" class = "variable" > < a href = "../parser.html#Parser.error_level" > error_level< / a > < / dd >
< dd id = "DuckDB.Parser.error_message_context" class = "variable" > < a href = "../parser.html#Parser.error_message_context" > error_message_context< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.dialect" class = "variable" > < a href = "../parser.html#Parser.dialect" > dialect< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "DuckDB.Parser.reset" class = "function" > < a href = "../parser.html#Parser.reset" > reset< / a > < / dd >
< dd id = "DuckDB.Parser.parse" class = "function" > < a href = "../parser.html#Parser.parse" > parse< / a > < / dd >
< dd id = "DuckDB.Parser.parse_into" class = "function" > < a href = "../parser.html#Parser.parse_into" > parse_into< / a > < / dd >
< dd id = "DuckDB.Parser.check_errors" class = "function" > < a href = "../parser.html#Parser.check_errors" > check_errors< / a > < / dd >
< dd id = "DuckDB.Parser.raise_error" class = "function" > < a href = "../parser.html#Parser.raise_error" > raise_error< / a > < / dd >
< dd id = "DuckDB.Parser.expression" class = "function" > < a href = "../parser.html#Parser.expression" > expression< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Parser.errors" class = "variable" > < a href = "../parser.html#Parser.errors" > errors< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator" >
< input id = "DuckDB.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" > DuckDB.Generator< / span > < wbr > (< span class = "base" > < a href = "../generator.html#Generator" > sqlglot.generator.Generator< / a > < / span > ):
< label class = "view-source-button" for = "DuckDB.Generator-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator-470" > < a href = "#DuckDB.Generator-470" > < span class = "linenos" > 470< / 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 = "DuckDB.Generator-471" > < a href = "#DuckDB.Generator-471" > < span class = "linenos" > 471< / span > < / a > < span class = "n" > PARAMETER_TOKEN< / span > < span class = "o" > =< / span > < span class = "s2" > " $" < / span >
< / span > < span id = "DuckDB.Generator-472" > < a href = "#DuckDB.Generator-472" > < span class = "linenos" > 472< / span > < / a > < span class = "n" > NAMED_PLACEHOLDER_TOKEN< / span > < span class = "o" > =< / span > < span class = "s2" > " $" < / span >
< / span > < span id = "DuckDB.Generator-473" > < a href = "#DuckDB.Generator-473" > < span class = "linenos" > 473< / span > < / a > < span class = "n" > JOIN_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-474" > < a href = "#DuckDB.Generator-474" > < span class = "linenos" > 474< / span > < / a > < span class = "n" > TABLE_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-475" > < a href = "#DuckDB.Generator-475" > < span class = "linenos" > 475< / span > < / a > < span class = "n" > QUERY_HINTS< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-476" > < a href = "#DuckDB.Generator-476" > < span class = "linenos" > 476< / span > < / a > < span class = "n" > LIMIT_FETCH< / span > < span class = "o" > =< / span > < span class = "s2" > " LIMIT" < / span >
< / span > < span id = "DuckDB.Generator-477" > < a href = "#DuckDB.Generator-477" > < span class = "linenos" > 477< / 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 = "DuckDB.Generator-478" > < a href = "#DuckDB.Generator-478" > < span class = "linenos" > 478< / span > < / a > < span class = "n" > RENAME_TABLE_WITH_DB< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-479" > < a href = "#DuckDB.Generator-479" > < span class = "linenos" > 479< / span > < / a > < span class = "n" > NVL2_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-480" > < a href = "#DuckDB.Generator-480" > < span class = "linenos" > 480< / span > < / a > < span class = "n" > SEMI_ANTI_JOIN_WITH_SIDE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-481" > < a href = "#DuckDB.Generator-481" > < span class = "linenos" > 481< / span > < / a > < span class = "n" > TABLESAMPLE_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "s2" > " USING SAMPLE" < / span >
< / span > < span id = "DuckDB.Generator-482" > < a href = "#DuckDB.Generator-482" > < span class = "linenos" > 482< / span > < / a > < span class = "n" > TABLESAMPLE_SEED_KEYWORD< / span > < span class = "o" > =< / span > < span class = "s2" > " REPEATABLE" < / span >
< / span > < span id = "DuckDB.Generator-483" > < a href = "#DuckDB.Generator-483" > < span class = "linenos" > 483< / span > < / a > < span class = "n" > LAST_DAY_SUPPORTS_DATE_PART< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-484" > < a href = "#DuckDB.Generator-484" > < span class = "linenos" > 484< / span > < / a > < span class = "n" > JSON_KEY_VALUE_PAIR_SEP< / span > < span class = "o" > =< / span > < span class = "s2" > " ," < / span >
< / span > < span id = "DuckDB.Generator-485" > < a href = "#DuckDB.Generator-485" > < span class = "linenos" > 485< / span > < / a > < span class = "n" > IGNORE_NULLS_IN_FUNC< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB.Generator-486" > < a href = "#DuckDB.Generator-486" > < span class = "linenos" > 486< / span > < / a > < span class = "n" > JSON_PATH_BRACKETED_KEY_SUPPORTED< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-487" > < a href = "#DuckDB.Generator-487" > < span class = "linenos" > 487< / span > < / a > < span class = "n" > SUPPORTS_CREATE_TABLE_LIKE< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-488" > < a href = "#DuckDB.Generator-488" > < span class = "linenos" > 488< / span > < / a > < span class = "n" > MULTI_ARG_DISTINCT< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-489" > < a href = "#DuckDB.Generator-489" > < span class = "linenos" > 489< / span > < / a > < span class = "n" > CAN_IMPLEMENT_ARRAY_ANY< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB.Generator-490" > < a href = "#DuckDB.Generator-490" > < span class = "linenos" > 490< / span > < / a > < span class = "n" > SUPPORTS_TO_NUMBER< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-491" > < a href = "#DuckDB.Generator-491" > < span class = "linenos" > 491< / span > < / a > < span class = "n" > COPY_HAS_INTO_KEYWORD< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-492" > < a href = "#DuckDB.Generator-492" > < span class = "linenos" > 492< / span > < / a > < span class = "n" > STAR_EXCEPT< / span > < span class = "o" > =< / span > < span class = "s2" > " EXCLUDE" < / span >
< / span > < span id = "DuckDB.Generator-493" > < a href = "#DuckDB.Generator-493" > < span class = "linenos" > 493< / span > < / a > < span class = "n" > PAD_FILL_PATTERN_IS_REQUIRED< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span >
< / span > < span id = "DuckDB.Generator-494" > < a href = "#DuckDB.Generator-494" > < span class = "linenos" > 494< / span > < / a > < span class = "n" > ARRAY_CONCAT_IS_VAR_LEN< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span >
< / span > < span id = "DuckDB.Generator-495" > < a href = "#DuckDB.Generator-495" > < span class = "linenos" > 495< / span > < / a >
< / span > < span id = "DuckDB.Generator-496" > < a href = "#DuckDB.Generator-496" > < span class = "linenos" > 496< / span > < / a > < span class = "n" > TRANSFORMS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Generator-497" > < a href = "#DuckDB.Generator-497" > < span class = "linenos" > 497< / 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 = "DuckDB.Generator-498" > < a href = "#DuckDB.Generator-498" > < span class = "linenos" > 498< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ApproxDistinct< / span > < span class = "p" > :< / span > < span class = "n" > approx_count_distinct_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-499" > < a href = "#DuckDB.Generator-499" > < span class = "linenos" > 499< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Array< / span > < span class = "p" > :< / span > < span class = "n" > inline_array_unless_query< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-500" > < a href = "#DuckDB.Generator-500" > < span class = "linenos" > 500< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArrayFilter< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_FILTER" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-501" > < a href = "#DuckDB.Generator-501" > < span class = "linenos" > 501< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySize< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ARRAY_LENGTH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-502" > < a href = "#DuckDB.Generator-502" > < span class = "linenos" > 502< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMax< / span > < span class = "p" > :< / span > < span class = "n" > arg_max_or_min_no_count< / span > < span class = "p" > (< / span > < span class = "s2" > " ARG_MAX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-503" > < a href = "#DuckDB.Generator-503" > < span class = "linenos" > 503< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArgMin< / span > < span class = "p" > :< / span > < span class = "n" > arg_max_or_min_no_count< / span > < span class = "p" > (< / span > < span class = "s2" > " ARG_MIN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-504" > < a href = "#DuckDB.Generator-504" > < span class = "linenos" > 504< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySort< / span > < span class = "p" > :< / span > < span class = "n" > _array_sort_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-505" > < a href = "#DuckDB.Generator-505" > < span class = "linenos" > 505< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ArraySum< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_SUM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-506" > < a href = "#DuckDB.Generator-506" > < span class = "linenos" > 506< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > BitwiseXor< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " XOR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-507" > < a href = "#DuckDB.Generator-507" > < span class = "linenos" > 507< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CommentColumnConstraint< / span > < span class = "p" > :< / span > < span class = "n" > no_comment_column_constraint_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-508" > < a href = "#DuckDB.Generator-508" > < span class = "linenos" > 508< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > CurrentDate< / 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_DATE" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-509" > < a href = "#DuckDB.Generator-509" > < span class = "linenos" > 509< / 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 = "DuckDB.Generator-510" > < a href = "#DuckDB.Generator-510" > < span class = "linenos" > 510< / 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 = "DuckDB.Generator-511" > < a href = "#DuckDB.Generator-511" > < span class = "linenos" > 511< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfMonth< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFMONTH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-512" > < a href = "#DuckDB.Generator-512" > < span class = "linenos" > 512< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfWeek< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFWEEK" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-513" > < a href = "#DuckDB.Generator-513" > < span class = "linenos" > 513< / 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" > " ISODOW" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-514" > < a href = "#DuckDB.Generator-514" > < span class = "linenos" > 514< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DayOfYear< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " DAYOFYEAR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-515" > < a href = "#DuckDB.Generator-515" > < span class = "linenos" > 515< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DataType< / span > < span class = "p" > :< / span > < span class = "n" > _datatype_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-516" > < a href = "#DuckDB.Generator-516" > < span class = "linenos" > 516< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Date< / span > < span class = "p" > :< / span > < span class = "n" > _date_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-517" > < a href = "#DuckDB.Generator-517" > < span class = "linenos" > 517< / 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 > < span id = "DuckDB.Generator-518" > < a href = "#DuckDB.Generator-518" > < span class = "linenos" > 518< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateFromParts< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_DATE" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-519" > < a href = "#DuckDB.Generator-519" > < span class = "linenos" > 519< / 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 > < span id = "DuckDB.Generator-520" > < a href = "#DuckDB.Generator-520" > < span class = "linenos" > 520< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DateDiff< / span > < span class = "p" > :< / span > < span class = "n" > _date_diff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-521" > < a href = "#DuckDB.Generator-521" > < span class = "linenos" > 521< / 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 = "DuckDB.Generator-522" > < a href = "#DuckDB.Generator-522" > < span class = "linenos" > 522< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Datetime< / span > < span class = "p" > :< / span > < span class = "n" > no_datetime_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-523" > < a href = "#DuckDB.Generator-523" > < span class = "linenos" > 523< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeSub< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-524" > < a href = "#DuckDB.Generator-524" > < span class = "linenos" > 524< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-525" > < a href = "#DuckDB.Generator-525" > < span class = "linenos" > 525< / 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 = "DuckDB.Generator-526" > < a href = "#DuckDB.Generator-526" > < span class = "linenos" > 526< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(STRFTIME(< / 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" > DuckDB< / 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 = "DuckDB.Generator-527" > < a href = "#DuckDB.Generator-527" > < span class = "linenos" > 527< / 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" > " DECODE" < / span > < span class = "p" > ,< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-528" > < a href = "#DuckDB.Generator-528" > < span class = "linenos" > 528< / 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 = "DuckDB.Generator-529" > < a href = "#DuckDB.Generator-529" > < span class = "linenos" > 529< / span > < / a > < span class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(STRPTIME(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 TEXT), < / span > < span class = "si" > {< / span > < span class = "n" > DuckDB< / 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 = "DuckDB.Generator-530" > < a href = "#DuckDB.Generator-530" > < span class = "linenos" > 530< / 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" > " ENCODE" < / span > < span class = "p" > ,< / span > < span class = "n" > replace< / span > < span class = "o" > =< / span > < span class = "kc" > False< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-531" > < a href = "#DuckDB.Generator-531" > < span class = "linenos" > 531< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateDateArray< / span > < span class = "p" > :< / span > < span class = "n" > _generate_datetime_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-532" > < a href = "#DuckDB.Generator-532" > < span class = "linenos" > 532< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > GenerateTimestampArray< / span > < span class = "p" > :< / span > < span class = "n" > _generate_datetime_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-533" > < a href = "#DuckDB.Generator-533" > < span class = "linenos" > 533< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Explode< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " UNNEST" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-534" > < a href = "#DuckDB.Generator-534" > < span class = "linenos" > 534< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IntDiv< / 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" > binary< / span > < span class = "p" > (< / span > < span class = "n" > e< / span > < span class = "p" > ,< / span > < span class = "s2" > " //" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-535" > < a href = "#DuckDB.Generator-535" > < span class = "linenos" > 535< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IsInf< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ISINF" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-536" > < a href = "#DuckDB.Generator-536" > < span class = "linenos" > 536< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > IsNan< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " ISNAN" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-537" > < a href = "#DuckDB.Generator-537" > < span class = "linenos" > 537< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONBExists< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " JSON_EXISTS" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-538" > < a href = "#DuckDB.Generator-538" > < span class = "linenos" > 538< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtract< / span > < span class = "p" > :< / span > < span class = "n" > _arrow_json_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-539" > < a href = "#DuckDB.Generator-539" > < span class = "linenos" > 539< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONExtractScalar< / span > < span class = "p" > :< / span > < span class = "n" > _arrow_json_extract_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-540" > < a href = "#DuckDB.Generator-540" > < span class = "linenos" > 540< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONFormat< / span > < span class = "p" > :< / span > < span class = "n" > _json_format_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-541" > < a href = "#DuckDB.Generator-541" > < span class = "linenos" > 541< / 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 = "DuckDB.Generator-542" > < a href = "#DuckDB.Generator-542" > < span class = "linenos" > 542< / 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 = "DuckDB.Generator-543" > < a href = "#DuckDB.Generator-543" > < span class = "linenos" > 543< / 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 = "DuckDB.Generator-544" > < a href = "#DuckDB.Generator-544" > < span class = "linenos" > 544< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MD5Digest< / 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" > " UNHEX" < / 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 = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )),< / span >
< / span > < span id = "DuckDB.Generator-545" > < a href = "#DuckDB.Generator-545" > < span class = "linenos" > 545< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > MonthsBetween< / 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 = "DuckDB.Generator-546" > < a href = "#DuckDB.Generator-546" > < span class = "linenos" > 546< / span > < / a > < span class = "s2" > " DATEDIFF" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-547" > < a href = "#DuckDB.Generator-547" > < span class = "linenos" > 547< / span > < / a > < span class = "s2" > " ' month' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-548" > < a href = "#DuckDB.Generator-548" > < span class = "linenos" > 548< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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" > copy< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-549" > < a href = "#DuckDB.Generator-549" > < span class = "linenos" > 549< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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" > copy< / span > < span class = "o" > =< / span > < span class = "kc" > True< / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-550" > < a href = "#DuckDB.Generator-550" > < span class = "linenos" > 550< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-551" > < a href = "#DuckDB.Generator-551" > < span class = "linenos" > 551< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileCont< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " QUANTILE_CONT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-552" > < a href = "#DuckDB.Generator-552" > < span class = "linenos" > 552< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PercentileDisc< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " QUANTILE_DISC" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-553" > < a href = "#DuckDB.Generator-553" > < span class = "linenos" > 553< / span > < / a > < span class = "c1" > # DuckDB doesn' t allow qualified columns inside of PIVOT expressions.< / span >
< / span > < span id = "DuckDB.Generator-554" > < a href = "#DuckDB.Generator-554" > < span class = "linenos" > 554< / span > < / a > < span class = "c1" > # See: https://github.com/duckdb/duckdb/blob/671faf92411182f81dce42ac43de8bfb05d9909e/src/planner/binder/tableref/bind_pivot.cpp#L61-L62< / span >
< / span > < span id = "DuckDB.Generator-555" > < a href = "#DuckDB.Generator-555" > < span class = "linenos" > 555< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Pivot< / 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" > unqualify_columns< / span > < span class = "p" > ]),< / span >
< / span > < span id = "DuckDB.Generator-556" > < a href = "#DuckDB.Generator-556" > < span class = "linenos" > 556< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpReplace< / 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 = "DuckDB.Generator-557" > < a href = "#DuckDB.Generator-557" > < span class = "linenos" > 557< / span > < / a > < span class = "s2" > " REGEXP_REPLACE" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-558" > < a href = "#DuckDB.Generator-558" > < span class = "linenos" > 558< / span > < / a > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-559" > < a href = "#DuckDB.Generator-559" > < span class = "linenos" > 559< / span > < / a > < span class = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-560" > < a href = "#DuckDB.Generator-560" > < span class = "linenos" > 560< / span > < / a > < span class = "n" > e< / 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" > " replacement" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-561" > < a href = "#DuckDB.Generator-561" > < span class = "linenos" > 561< / span > < / a > < span class = "n" > e< / 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" > " modifiers" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-562" > < a href = "#DuckDB.Generator-562" > < span class = "linenos" > 562< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-563" > < a href = "#DuckDB.Generator-563" > < span class = "linenos" > 563< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpLike< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " REGEXP_MATCHES" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-564" > < a href = "#DuckDB.Generator-564" > < span class = "linenos" > 564< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > RegexpSplit< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " STR_SPLIT_REGEX" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-565" > < a href = "#DuckDB.Generator-565" > < span class = "linenos" > 565< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Return< / 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" > sql< / 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 = "DuckDB.Generator-566" > < a href = "#DuckDB.Generator-566" > < span class = "linenos" > 566< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ReturnsProperty< / 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 = "s2" > " TABLE" < / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Schema< / span > < span class = "p" > )< / span > < span class = "k" > else< / span > < span class = "s2" > " " < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-567" > < a href = "#DuckDB.Generator-567" > < span class = "linenos" > 567< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Rand< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " RANDOM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-568" > < a href = "#DuckDB.Generator-568" > < span class = "linenos" > 568< / 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 = "DuckDB.Generator-569" > < a href = "#DuckDB.Generator-569" > < span class = "linenos" > 569< / 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 = "DuckDB.Generator-570" > < a href = "#DuckDB.Generator-570" > < span class = "linenos" > 570< / 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 = "DuckDB.Generator-571" > < a href = "#DuckDB.Generator-571" > < span class = "linenos" > 571< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Split< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " STR_SPLIT" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-572" > < a href = "#DuckDB.Generator-572" > < span class = "linenos" > 572< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > SortArray< / span > < span class = "p" > :< / span > < span class = "n" > _sort_array_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-573" > < a href = "#DuckDB.Generator-573" > < span class = "linenos" > 573< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrPosition< / span > < span class = "p" > :< / span > < span class = "n" > str_position_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-574" > < a href = "#DuckDB.Generator-574" > < span class = "linenos" > 574< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > StrToUnix< / 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 = "DuckDB.Generator-575" > < a href = "#DuckDB.Generator-575" > < span class = "linenos" > 575< / span > < / a > < span class = "s2" > " EPOCH" < / 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" > " STRPTIME" < / 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 = "DuckDB.Generator-576" > < a href = "#DuckDB.Generator-576" > < span class = "linenos" > 576< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-577" > < a href = "#DuckDB.Generator-577" > < span class = "linenos" > 577< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Struct< / span > < span class = "p" > :< / span > < span class = "n" > _struct_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-578" > < a href = "#DuckDB.Generator-578" > < span class = "linenos" > 578< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Transform< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " LIST_TRANSFORM" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-579" > < a href = "#DuckDB.Generator-579" > < span class = "linenos" > 579< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-580" > < a href = "#DuckDB.Generator-580" > < span class = "linenos" > 580< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Time< / span > < span class = "p" > :< / span > < span class = "n" > no_time_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-581" > < a href = "#DuckDB.Generator-581" > < span class = "linenos" > 581< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeDiff< / span > < span class = "p" > :< / span > < span class = "n" > _timediff_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-582" > < a href = "#DuckDB.Generator-582" > < span class = "linenos" > 582< / 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 = "DuckDB.Generator-583" > < a href = "#DuckDB.Generator-583" > < span class = "linenos" > 583< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimestampDiff< / 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 = "DuckDB.Generator-584" > < a href = "#DuckDB.Generator-584" > < span class = "linenos" > 584< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / 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 = "n" > e< / span > < span class = "o" > .< / span > < span class = "n" > unit< / 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 = "DuckDB.Generator-585" > < a href = "#DuckDB.Generator-585" > < span class = "linenos" > 585< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-586" > < a href = "#DuckDB.Generator-586" > < span class = "linenos" > 586< / 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 = "DuckDB.Generator-587" > < a href = "#DuckDB.Generator-587" > < span class = "linenos" > 587< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TimeStrToDate< / 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" > 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" > e< / 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" > DATE< / span > < span class = "p" > )),< / span >
< / span > < span id = "DuckDB.Generator-588" > < a href = "#DuckDB.Generator-588" > < span class = "linenos" > 588< / 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 = "DuckDB.Generator-589" > < a href = "#DuckDB.Generator-589" > < span class = "linenos" > 589< / 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 = "DuckDB.Generator-590" > < a href = "#DuckDB.Generator-590" > < span class = "linenos" > 590< / span > < / a > < span class = "s2" > " EPOCH" < / 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" > e< / 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 = "DuckDB.Generator-591" > < a href = "#DuckDB.Generator-591" > < span class = "linenos" > 591< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-592" > < a href = "#DuckDB.Generator-592" > < span class = "linenos" > 592< / 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" > " STRFTIME" < / 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 = "DuckDB.Generator-593" > < a href = "#DuckDB.Generator-593" > < span class = "linenos" > 593< / 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" > " EPOCH" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-594" > < a href = "#DuckDB.Generator-594" > < span class = "linenos" > 594< / 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 = "DuckDB.Generator-595" > < a href = "#DuckDB.Generator-595" > < span class = "linenos" > 595< / 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 TEXT), ' -' , ' ' ), 1, 8) AS INT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-596" > < a href = "#DuckDB.Generator-596" > < span class = "linenos" > 596< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsAdd< / span > < span class = "p" > :< / span > < span class = "n" > _date_delta_sql< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-597" > < a href = "#DuckDB.Generator-597" > < span class = "linenos" > 597< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TsOrDsDiff< / 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 = "DuckDB.Generator-598" > < a href = "#DuckDB.Generator-598" > < span class = "linenos" > 598< / span > < / a > < span class = "s2" > " DATE_DIFF" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-599" > < a href = "#DuckDB.Generator-599" > < span class = "linenos" > 599< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " ' < / span > < span class = "si" > {< / span > < span class = "n" > e< / 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 = "s1" > ' unit' < / span > < span class = "p" > )< / span > < span class = "w" > < / span > < span class = "ow" > or< / span > < span class = "w" > < / span > < span class = "s1" > ' DAY' < / span > < span class = "si" > }< / span > < span class = "s2" > ' " < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-600" > < a href = "#DuckDB.Generator-600" > < span class = "linenos" > 600< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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 = "DuckDB.Generator-601" > < a href = "#DuckDB.Generator-601" > < span class = "linenos" > 601< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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 = "DuckDB.Generator-602" > < a href = "#DuckDB.Generator-602" > < span class = "linenos" > 602< / span > < / a > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-603" > < a href = "#DuckDB.Generator-603" > < span class = "linenos" > 603< / 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 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 = "DuckDB.Generator-604" > < a href = "#DuckDB.Generator-604" > < span class = "linenos" > 604< / span > < / a > < span class = "s2" > " STRFTIME" < / 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_TIMESTAMP" < / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-605" > < a href = "#DuckDB.Generator-605" > < span class = "linenos" > 605< / span > < / a > < span class = "p" > ),< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-606" > < a href = "#DuckDB.Generator-606" > < span class = "linenos" > 606< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > DatetimeTrunc< / 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 = "DuckDB.Generator-607" > < a href = "#DuckDB.Generator-607" > < span class = "linenos" > 607< / span > < / a > < span class = "s2" > " DATE_TRUNC" < / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > cast< / 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" > 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-608" > < a href = "#DuckDB.Generator-608" > < span class = "linenos" > 608< / span > < / a > < span class = "p" > ),< / span >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-609" > < a href = "#DuckDB.Generator-609" > < span class = "linenos" > 609< / 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 = "DuckDB.Generator-610" > < a href = "#DuckDB.Generator-610" > < span class = "linenos" > 610< / 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 class = "n" > e< / span > < span class = "p" > :< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(TO_TIMESTAMP(< / 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 TEXT)" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-611" > < a href = "#DuckDB.Generator-611" > < span class = "linenos" > 611< / 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 = "DuckDB.Generator-612" > < a href = "#DuckDB.Generator-612" > < span class = "linenos" > 612< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > WeekOfYear< / span > < span class = "p" > :< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " WEEKOFYEAR" < / span > < span class = "p" > ),< / span >
< / span > < span id = "DuckDB.Generator-613" > < a href = "#DuckDB.Generator-613" > < span class = "linenos" > 613< / 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 = "DuckDB.Generator-614" > < a href = "#DuckDB.Generator-614" > < span class = "linenos" > 614< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Generator-615" > < a href = "#DuckDB.Generator-615" > < span class = "linenos" > 615< / span > < / a >
< / span > < span id = "DuckDB.Generator-616" > < a href = "#DuckDB.Generator-616" > < span class = "linenos" > 616< / span > < / a > < span class = "n" > SUPPORTED_JSON_PATH_PARTS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Generator-617" > < a href = "#DuckDB.Generator-617" > < span class = "linenos" > 617< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathKey< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-618" > < a href = "#DuckDB.Generator-618" > < span class = "linenos" > 618< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathRoot< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-619" > < a href = "#DuckDB.Generator-619" > < span class = "linenos" > 619< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathSubscript< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-620" > < a href = "#DuckDB.Generator-620" > < span class = "linenos" > 620< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > JSONPathWildcard< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-621" > < a href = "#DuckDB.Generator-621" > < span class = "linenos" > 621< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Generator-622" > < a href = "#DuckDB.Generator-622" > < span class = "linenos" > 622< / span > < / a >
< / span > < span id = "DuckDB.Generator-623" > < a href = "#DuckDB.Generator-623" > < span class = "linenos" > 623< / span > < / a > < span class = "n" > TYPE_MAPPING< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Generator-624" > < a href = "#DuckDB.Generator-624" > < span class = "linenos" > 624< / 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 = "DuckDB.Generator-625" > < a href = "#DuckDB.Generator-625" > < span class = "linenos" > 625< / 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" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-626" > < a href = "#DuckDB.Generator-626" > < span class = "linenos" > 626< / 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" > BPCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-627" > < a href = "#DuckDB.Generator-627" > < span class = "linenos" > 627< / 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" > CHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-628" > < a href = "#DuckDB.Generator-628" > < span class = "linenos" > 628< / 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 = "DuckDB.Generator-629" > < a href = "#DuckDB.Generator-629" > < span class = "linenos" > 629< / 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" > NCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-630" > < a href = "#DuckDB.Generator-630" > < span class = "linenos" > 630< / 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" > NVARCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-631" > < a href = "#DuckDB.Generator-631" > < span class = "linenos" > 631< / 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" > UINT< / span > < span class = "p" > :< / span > < span class = "s2" > " UINTEGER" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-632" > < a href = "#DuckDB.Generator-632" > < span class = "linenos" > 632< / 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" > VARBINARY< / span > < span class = "p" > :< / span > < span class = "s2" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-633" > < a href = "#DuckDB.Generator-633" > < span class = "linenos" > 633< / 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" > ROWVERSION< / span > < span class = "p" > :< / span > < span class = "s2" > " BLOB" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-634" > < a href = "#DuckDB.Generator-634" > < span class = "linenos" > 634< / 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" > VARCHAR< / span > < span class = "p" > :< / span > < span class = "s2" > " TEXT" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-635" > < a href = "#DuckDB.Generator-635" > < span class = "linenos" > 635< / 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 = "DuckDB.Generator-636" > < a href = "#DuckDB.Generator-636" > < span class = "linenos" > 636< / 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" > TIMESTAMP_S< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_S" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-637" > < a href = "#DuckDB.Generator-637" > < span class = "linenos" > 637< / 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" > TIMESTAMP_MS< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_MS" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-638" > < a href = "#DuckDB.Generator-638" > < span class = "linenos" > 638< / 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" > TIMESTAMP_NS< / span > < span class = "p" > :< / span > < span class = "s2" > " TIMESTAMP_NS" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-639" > < a href = "#DuckDB.Generator-639" > < span class = "linenos" > 639< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Generator-640" > < a href = "#DuckDB.Generator-640" > < span class = "linenos" > 640< / span > < / a >
< / span > < span id = "DuckDB.Generator-641" > < a href = "#DuckDB.Generator-641" > < span class = "linenos" > 641< / span > < / a > < span class = "c1" > # https://github.com/duckdb/duckdb/blob/ff7f24fd8e3128d94371827523dae85ebaf58713/third_party/libpg_query/grammar/keywords/reserved_keywords.list#L1-L77< / span >
< / span > < span id = "DuckDB.Generator-642" > < a href = "#DuckDB.Generator-642" > < span class = "linenos" > 642< / span > < / a > < span class = "n" > RESERVED_KEYWORDS< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Generator-643" > < a href = "#DuckDB.Generator-643" > < span class = "linenos" > 643< / span > < / a > < span class = "s2" > " array" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-644" > < a href = "#DuckDB.Generator-644" > < span class = "linenos" > 644< / span > < / a > < span class = "s2" > " analyse" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-645" > < a href = "#DuckDB.Generator-645" > < span class = "linenos" > 645< / span > < / a > < span class = "s2" > " union" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-646" > < a href = "#DuckDB.Generator-646" > < span class = "linenos" > 646< / span > < / a > < span class = "s2" > " all" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-647" > < a href = "#DuckDB.Generator-647" > < span class = "linenos" > 647< / span > < / a > < span class = "s2" > " when" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-648" > < a href = "#DuckDB.Generator-648" > < span class = "linenos" > 648< / span > < / a > < span class = "s2" > " in_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-649" > < a href = "#DuckDB.Generator-649" > < span class = "linenos" > 649< / span > < / a > < span class = "s2" > " default" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-650" > < a href = "#DuckDB.Generator-650" > < span class = "linenos" > 650< / span > < / a > < span class = "s2" > " create_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-651" > < a href = "#DuckDB.Generator-651" > < span class = "linenos" > 651< / span > < / a > < span class = "s2" > " window" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-652" > < a href = "#DuckDB.Generator-652" > < span class = "linenos" > 652< / span > < / a > < span class = "s2" > " asymmetric" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-653" > < a href = "#DuckDB.Generator-653" > < span class = "linenos" > 653< / span > < / a > < span class = "s2" > " to" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-654" > < a href = "#DuckDB.Generator-654" > < span class = "linenos" > 654< / span > < / a > < span class = "s2" > " else" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-655" > < a href = "#DuckDB.Generator-655" > < span class = "linenos" > 655< / span > < / a > < span class = "s2" > " localtime" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-656" > < a href = "#DuckDB.Generator-656" > < span class = "linenos" > 656< / span > < / a > < span class = "s2" > " from" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-657" > < a href = "#DuckDB.Generator-657" > < span class = "linenos" > 657< / span > < / a > < span class = "s2" > " end_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-658" > < a href = "#DuckDB.Generator-658" > < span class = "linenos" > 658< / span > < / a > < span class = "s2" > " select" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-659" > < a href = "#DuckDB.Generator-659" > < span class = "linenos" > 659< / span > < / a > < span class = "s2" > " current_date" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-660" > < a href = "#DuckDB.Generator-660" > < span class = "linenos" > 660< / span > < / a > < span class = "s2" > " foreign" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-661" > < a href = "#DuckDB.Generator-661" > < span class = "linenos" > 661< / span > < / a > < span class = "s2" > " with" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-662" > < a href = "#DuckDB.Generator-662" > < span class = "linenos" > 662< / span > < / a > < span class = "s2" > " grant" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-663" > < a href = "#DuckDB.Generator-663" > < span class = "linenos" > 663< / span > < / a > < span class = "s2" > " session_user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-664" > < a href = "#DuckDB.Generator-664" > < span class = "linenos" > 664< / span > < / a > < span class = "s2" > " or" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-665" > < a href = "#DuckDB.Generator-665" > < span class = "linenos" > 665< / span > < / a > < span class = "s2" > " except" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-666" > < a href = "#DuckDB.Generator-666" > < span class = "linenos" > 666< / span > < / a > < span class = "s2" > " references" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-667" > < a href = "#DuckDB.Generator-667" > < span class = "linenos" > 667< / span > < / a > < span class = "s2" > " fetch" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-668" > < a href = "#DuckDB.Generator-668" > < span class = "linenos" > 668< / span > < / a > < span class = "s2" > " limit" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-669" > < a href = "#DuckDB.Generator-669" > < span class = "linenos" > 669< / span > < / a > < span class = "s2" > " group_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-670" > < a href = "#DuckDB.Generator-670" > < span class = "linenos" > 670< / span > < / a > < span class = "s2" > " leading" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-671" > < a href = "#DuckDB.Generator-671" > < span class = "linenos" > 671< / span > < / a > < span class = "s2" > " into" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-672" > < a href = "#DuckDB.Generator-672" > < span class = "linenos" > 672< / span > < / a > < span class = "s2" > " collate" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-673" > < a href = "#DuckDB.Generator-673" > < span class = "linenos" > 673< / span > < / a > < span class = "s2" > " offset" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-674" > < a href = "#DuckDB.Generator-674" > < span class = "linenos" > 674< / span > < / a > < span class = "s2" > " do" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-675" > < a href = "#DuckDB.Generator-675" > < span class = "linenos" > 675< / span > < / a > < span class = "s2" > " then" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-676" > < a href = "#DuckDB.Generator-676" > < span class = "linenos" > 676< / span > < / a > < span class = "s2" > " localtimestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-677" > < a href = "#DuckDB.Generator-677" > < span class = "linenos" > 677< / span > < / a > < span class = "s2" > " check_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-678" > < a href = "#DuckDB.Generator-678" > < span class = "linenos" > 678< / span > < / a > < span class = "s2" > " lateral_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-679" > < a href = "#DuckDB.Generator-679" > < span class = "linenos" > 679< / span > < / a > < span class = "s2" > " current_role" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-680" > < a href = "#DuckDB.Generator-680" > < span class = "linenos" > 680< / span > < / a > < span class = "s2" > " where" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-681" > < a href = "#DuckDB.Generator-681" > < span class = "linenos" > 681< / span > < / a > < span class = "s2" > " asc_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-682" > < a href = "#DuckDB.Generator-682" > < span class = "linenos" > 682< / span > < / a > < span class = "s2" > " placing" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-683" > < a href = "#DuckDB.Generator-683" > < span class = "linenos" > 683< / span > < / a > < span class = "s2" > " desc_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-684" > < a href = "#DuckDB.Generator-684" > < span class = "linenos" > 684< / span > < / a > < span class = "s2" > " user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-685" > < a href = "#DuckDB.Generator-685" > < span class = "linenos" > 685< / span > < / a > < span class = "s2" > " unique" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-686" > < a href = "#DuckDB.Generator-686" > < span class = "linenos" > 686< / span > < / a > < span class = "s2" > " initially" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-687" > < a href = "#DuckDB.Generator-687" > < span class = "linenos" > 687< / span > < / a > < span class = "s2" > " column" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-688" > < a href = "#DuckDB.Generator-688" > < span class = "linenos" > 688< / span > < / a > < span class = "s2" > " both" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-689" > < a href = "#DuckDB.Generator-689" > < span class = "linenos" > 689< / span > < / a > < span class = "s2" > " some" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-690" > < a href = "#DuckDB.Generator-690" > < span class = "linenos" > 690< / span > < / a > < span class = "s2" > " as" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-691" > < a href = "#DuckDB.Generator-691" > < span class = "linenos" > 691< / span > < / a > < span class = "s2" > " any" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-692" > < a href = "#DuckDB.Generator-692" > < span class = "linenos" > 692< / span > < / a > < span class = "s2" > " only" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-693" > < a href = "#DuckDB.Generator-693" > < span class = "linenos" > 693< / span > < / a > < span class = "s2" > " deferrable" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-694" > < a href = "#DuckDB.Generator-694" > < span class = "linenos" > 694< / span > < / a > < span class = "s2" > " null_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-695" > < a href = "#DuckDB.Generator-695" > < span class = "linenos" > 695< / span > < / a > < span class = "s2" > " current_time" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-696" > < a href = "#DuckDB.Generator-696" > < span class = "linenos" > 696< / span > < / a > < span class = "s2" > " true_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-697" > < a href = "#DuckDB.Generator-697" > < span class = "linenos" > 697< / span > < / a > < span class = "s2" > " table" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-698" > < a href = "#DuckDB.Generator-698" > < span class = "linenos" > 698< / span > < / a > < span class = "s2" > " case" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-699" > < a href = "#DuckDB.Generator-699" > < span class = "linenos" > 699< / span > < / a > < span class = "s2" > " trailing" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-700" > < a href = "#DuckDB.Generator-700" > < span class = "linenos" > 700< / span > < / a > < span class = "s2" > " variadic" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-701" > < a href = "#DuckDB.Generator-701" > < span class = "linenos" > 701< / span > < / a > < span class = "s2" > " for" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-702" > < a href = "#DuckDB.Generator-702" > < span class = "linenos" > 702< / span > < / a > < span class = "s2" > " on" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-703" > < a href = "#DuckDB.Generator-703" > < span class = "linenos" > 703< / span > < / a > < span class = "s2" > " distinct" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-704" > < a href = "#DuckDB.Generator-704" > < span class = "linenos" > 704< / span > < / a > < span class = "s2" > " false_p" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-705" > < a href = "#DuckDB.Generator-705" > < span class = "linenos" > 705< / span > < / a > < span class = "s2" > " not" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-706" > < a href = "#DuckDB.Generator-706" > < span class = "linenos" > 706< / span > < / a > < span class = "s2" > " constraint" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-707" > < a href = "#DuckDB.Generator-707" > < span class = "linenos" > 707< / span > < / a > < span class = "s2" > " current_timestamp" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-708" > < a href = "#DuckDB.Generator-708" > < span class = "linenos" > 708< / span > < / a > < span class = "s2" > " returning" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-709" > < a href = "#DuckDB.Generator-709" > < span class = "linenos" > 709< / span > < / a > < span class = "s2" > " primary" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-710" > < a href = "#DuckDB.Generator-710" > < span class = "linenos" > 710< / span > < / a > < span class = "s2" > " intersect" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-711" > < a href = "#DuckDB.Generator-711" > < span class = "linenos" > 711< / span > < / a > < span class = "s2" > " having" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-712" > < a href = "#DuckDB.Generator-712" > < span class = "linenos" > 712< / span > < / a > < span class = "s2" > " analyze" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-713" > < a href = "#DuckDB.Generator-713" > < span class = "linenos" > 713< / span > < / a > < span class = "s2" > " current_user" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-714" > < a href = "#DuckDB.Generator-714" > < span class = "linenos" > 714< / span > < / a > < span class = "s2" > " and" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-715" > < a href = "#DuckDB.Generator-715" > < span class = "linenos" > 715< / span > < / a > < span class = "s2" > " cast" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-716" > < a href = "#DuckDB.Generator-716" > < span class = "linenos" > 716< / span > < / a > < span class = "s2" > " symmetric" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-717" > < a href = "#DuckDB.Generator-717" > < span class = "linenos" > 717< / span > < / a > < span class = "s2" > " using" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-718" > < a href = "#DuckDB.Generator-718" > < span class = "linenos" > 718< / span > < / a > < span class = "s2" > " order" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-719" > < a href = "#DuckDB.Generator-719" > < span class = "linenos" > 719< / span > < / a > < span class = "s2" > " current_catalog" < / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-720" > < a href = "#DuckDB.Generator-720" > < span class = "linenos" > 720< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Generator-721" > < a href = "#DuckDB.Generator-721" > < span class = "linenos" > 721< / span > < / a >
< / span > < span id = "DuckDB.Generator-722" > < a href = "#DuckDB.Generator-722" > < span class = "linenos" > 722< / span > < / a > < span class = "n" > UNWRAPPED_INTERVAL_VALUES< / span > < span class = "o" > =< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Literal< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Paren< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-723" > < a href = "#DuckDB.Generator-723" > < span class = "linenos" > 723< / span > < / a >
< / span > < span id = "DuckDB.Generator-724" > < a href = "#DuckDB.Generator-724" > < span class = "linenos" > 724< / span > < / a > < span class = "c1" > # DuckDB doesn' t generally support CREATE TABLE .. properties< / span >
< / span > < span id = "DuckDB.Generator-725" > < a href = "#DuckDB.Generator-725" > < span class = "linenos" > 725< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/statements/create_table.html< / span >
< / span > < span id = "DuckDB.Generator-726" > < a href = "#DuckDB.Generator-726" > < span class = "linenos" > 726< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "o" > =< / span > < span class = "p" > {< / span >
< / span > < span id = "DuckDB.Generator-727" > < a href = "#DuckDB.Generator-727" > < span class = "linenos" > 727< / span > < / a > < span class = "n" > prop< / 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 > < span id = "DuckDB.Generator-728" > < a href = "#DuckDB.Generator-728" > < span class = "linenos" > 728< / span > < / a > < span class = "k" > for< / span > < span class = "n" > prop< / span > < span class = "ow" > in< / 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 > < span id = "DuckDB.Generator-729" > < a href = "#DuckDB.Generator-729" > < span class = "linenos" > 729< / span > < / a > < span class = "p" > }< / span >
< / span > < span id = "DuckDB.Generator-730" > < a href = "#DuckDB.Generator-730" > < span class = "linenos" > 730< / span > < / a >
< / span > < span id = "DuckDB.Generator-731" > < a href = "#DuckDB.Generator-731" > < span class = "linenos" > 731< / span > < / a > < span class = "c1" > # There are a few exceptions (e.g. temporary tables) which are supported or< / span >
< / span > < span id = "DuckDB.Generator-732" > < a href = "#DuckDB.Generator-732" > < span class = "linenos" > 732< / span > < / a > < span class = "c1" > # can be transpiled to DuckDB, so we explicitly override them accordingly< / span >
< / span > < span id = "DuckDB.Generator-733" > < a href = "#DuckDB.Generator-733" > < span class = "linenos" > 733< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > LikeProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_SCHEMA< / span >
< / span > < span id = "DuckDB.Generator-734" > < a href = "#DuckDB.Generator-734" > < span class = "linenos" > 734< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TemporaryProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_CREATE< / span >
< / span > < span id = "DuckDB.Generator-735" > < a href = "#DuckDB.Generator-735" > < span class = "linenos" > 735< / span > < / a > < span class = "n" > PROPERTIES_LOCATION< / span > < span class = "p" > [< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > ReturnsProperty< / span > < span class = "p" > ]< / span > < span class = "o" > =< / 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" > POST_ALIAS< / span >
< / span > < span id = "DuckDB.Generator-736" > < a href = "#DuckDB.Generator-736" > < span class = "linenos" > 736< / span > < / a >
< / span > < span id = "DuckDB.Generator-737" > < a href = "#DuckDB.Generator-737" > < span class = "linenos" > 737< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > fromiso8601timestamp_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" > FromISO8601Timestamp< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-738" > < a href = "#DuckDB.Generator-738" > < span class = "linenos" > 738< / 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" > 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" > TIMESTAMPTZ< / span > < span class = "p" > ))< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-739" > < a href = "#DuckDB.Generator-739" > < span class = "linenos" > 739< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-740" > < a href = "#DuckDB.Generator-740" > < span class = "linenos" > 740< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtotime_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" > StrToTime< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-741" > < a href = "#DuckDB.Generator-741" > < span class = "linenos" > 741< / 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 = "DuckDB.Generator-742" > < a href = "#DuckDB.Generator-742" > < span class = "linenos" > 742< / span > < / a > < span class = "n" > formatted_time< / 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 = "DuckDB.Generator-743" > < a href = "#DuckDB.Generator-743" > < span class = "linenos" > 743< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS TIMESTAMP)" < / span >
< / span > < span id = "DuckDB.Generator-744" > < a href = "#DuckDB.Generator-744" > < span class = "linenos" > 744< / span > < / a > < span class = "k" > return< / 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 > < span id = "DuckDB.Generator-745" > < a href = "#DuckDB.Generator-745" > < span class = "linenos" > 745< / span > < / a >
< / span > < span id = "DuckDB.Generator-746" > < a href = "#DuckDB.Generator-746" > < span class = "linenos" > 746< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtodate_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" > StrToDate< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-747" > < a href = "#DuckDB.Generator-747" > < span class = "linenos" > 747< / 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 = "DuckDB.Generator-748" > < a href = "#DuckDB.Generator-748" > < span class = "linenos" > 748< / span > < / a > < span class = "n" > formatted_time< / 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 = "DuckDB.Generator-749" > < a href = "#DuckDB.Generator-749" > < span class = "linenos" > 749< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
< / span > < span id = "DuckDB.Generator-750" > < a href = "#DuckDB.Generator-750" > < span class = "linenos" > 750< / span > < / a > < span class = "k" > return< / 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" > expression< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
< / span > < span id = "DuckDB.Generator-751" > < a href = "#DuckDB.Generator-751" > < span class = "linenos" > 751< / span > < / a >
< / span > < span id = "DuckDB.Generator-752" > < a href = "#DuckDB.Generator-752" > < span class = "linenos" > 752< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > parsejson_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" > ParseJSON< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-753" > < a href = "#DuckDB.Generator-753" > < span class = "linenos" > 753< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "DuckDB.Generator-754" > < a href = "#DuckDB.Generator-754" > < span class = "linenos" > 754< / 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 = "DuckDB.Generator-755" > < a href = "#DuckDB.Generator-755" > < span class = "linenos" > 755< / 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" > case< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > when< / 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 = "s2" > " json_valid" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ),< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > else_< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > null< / span > < span class = "p" > ()))< / span >
< / span > < span id = "DuckDB.Generator-756" > < a href = "#DuckDB.Generator-756" > < span class = "linenos" > 756< / 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" > " JSON" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-757" > < a href = "#DuckDB.Generator-757" > < span class = "linenos" > 757< / span > < / a >
< / span > < span id = "DuckDB.Generator-758" > < a href = "#DuckDB.Generator-758" > < span class = "linenos" > 758< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timefromparts_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" > TimeFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-759" > < a href = "#DuckDB.Generator-759" > < span class = "linenos" > 759< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-760" > < a href = "#DuckDB.Generator-760" > < span class = "linenos" > 760< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-761" > < a href = "#DuckDB.Generator-761" > < span class = "linenos" > 761< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-762" > < a href = "#DuckDB.Generator-762" > < span class = "linenos" > 762< / span > < / a > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ]< / span > < span class = "o" > +< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-763" > < a href = "#DuckDB.Generator-763" > < span class = "linenos" > 763< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-764" > < a href = "#DuckDB.Generator-764" > < span class = "linenos" > 764< / span > < / a >
< / span > < span id = "DuckDB.Generator-765" > < a href = "#DuckDB.Generator-765" > < span class = "linenos" > 765< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIME" < / 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 = "DuckDB.Generator-766" > < a href = "#DuckDB.Generator-766" > < span class = "linenos" > 766< / span > < / a >
< / span > < span id = "DuckDB.Generator-767" > < a href = "#DuckDB.Generator-767" > < span class = "linenos" > 767< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timestampfromparts_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" > TimestampFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-768" > < a href = "#DuckDB.Generator-768" > < span class = "linenos" > 768< / span > < / a > < span class = "n" > sec< / 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" > " sec" < / span > < span class = "p" > ]< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-769" > < a href = "#DuckDB.Generator-769" > < span class = "linenos" > 769< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-770" > < a href = "#DuckDB.Generator-770" > < span class = "linenos" > 770< / span > < / a > < span class = "n" > milli< / 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" > " milli" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-771" > < a href = "#DuckDB.Generator-771" > < span class = "linenos" > 771< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-772" > < a href = "#DuckDB.Generator-772" > < span class = "linenos" > 772< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > milli< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-773" > < a href = "#DuckDB.Generator-773" > < span class = "linenos" > 773< / span > < / a >
< / span > < span id = "DuckDB.Generator-774" > < a href = "#DuckDB.Generator-774" > < span class = "linenos" > 774< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-775" > < a href = "#DuckDB.Generator-775" > < span class = "linenos" > 775< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-776" > < a href = "#DuckDB.Generator-776" > < span class = "linenos" > 776< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-777" > < a href = "#DuckDB.Generator-777" > < span class = "linenos" > 777< / span > < / a >
< / span > < span id = "DuckDB.Generator-778" > < a href = "#DuckDB.Generator-778" > < span class = "linenos" > 778< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > or< / span > < span class = "n" > nano< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-779" > < a href = "#DuckDB.Generator-779" > < span class = "linenos" > 779< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > sec< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-780" > < a href = "#DuckDB.Generator-780" > < span class = "linenos" > 780< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-781" > < a href = "#DuckDB.Generator-781" > < span class = "linenos" > 781< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIMESTAMP" < / 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 = "DuckDB.Generator-782" > < a href = "#DuckDB.Generator-782" > < span class = "linenos" > 782< / span > < / a >
< / span > < span id = "DuckDB.Generator-783" > < a href = "#DuckDB.Generator-783" > < span class = "linenos" > 783< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > tablesample_sql< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-784" > < a href = "#DuckDB.Generator-784" > < span class = "linenos" > 784< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-785" > < a href = "#DuckDB.Generator-785" > < span class = "linenos" > 785< / span > < / a > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableSample< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-786" > < a href = "#DuckDB.Generator-786" > < span class = "linenos" > 786< / span > < / a > < span class = "n" > tablesample_keyword< / 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" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator-787" > < a href = "#DuckDB.Generator-787" > < span class = "linenos" > 787< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-788" > < a href = "#DuckDB.Generator-788" > < span class = "linenos" > 788< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / 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" > Select< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-789" > < a href = "#DuckDB.Generator-789" > < span class = "linenos" > 789< / span > < / a > < span class = "c1" > # This sample clause only applies to a single source, not the entire resulting relation< / span >
< / span > < span id = "DuckDB.Generator-790" > < a href = "#DuckDB.Generator-790" > < span class = "linenos" > 790< / span > < / a > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "s2" > " TABLESAMPLE" < / span >
< / span > < span id = "DuckDB.Generator-791" > < a href = "#DuckDB.Generator-791" > < span class = "linenos" > 791< / span > < / a >
< / span > < span id = "DuckDB.Generator-792" > < a href = "#DuckDB.Generator-792" > < span class = "linenos" > 792< / 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" > " size" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-793" > < a href = "#DuckDB.Generator-793" > < span class = "linenos" > 793< / span > < / a > < span class = "n" > method< / 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" > " method" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-794" > < a href = "#DuckDB.Generator-794" > < span class = "linenos" > 794< / span > < / a > < span class = "k" > if< / span > < span class = "n" > method< / span > < span class = "ow" > and< / span > < span class = "n" > method< / 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 = "o" > !=< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-795" > < a href = "#DuckDB.Generator-795" > < span class = "linenos" > 795< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-796" > < a href = "#DuckDB.Generator-796" > < span class = "linenos" > 796< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Sampling method < / span > < span class = "si" > {< / span > < span class = "n" > method< / span > < span class = "si" > }< / span > < span class = "s2" > is not supported with a discrete sample count, " < / span >
< / span > < span id = "DuckDB.Generator-797" > < a href = "#DuckDB.Generator-797" > < span class = "linenos" > 797< / span > < / a > < span class = "s2" > " defaulting to reservoir sampling" < / span >
< / span > < span id = "DuckDB.Generator-798" > < a href = "#DuckDB.Generator-798" > < span class = "linenos" > 798< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-799" > < a href = "#DuckDB.Generator-799" > < span class = "linenos" > 799< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator-800" > < a href = "#DuckDB.Generator-800" > < span class = "linenos" > 800< / span > < / a >
< / span > < span id = "DuckDB.Generator-801" > < a href = "#DuckDB.Generator-801" > < span class = "linenos" > 801< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > tablesample_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "n" > tablesample_keyword< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-802" > < a href = "#DuckDB.Generator-802" > < span class = "linenos" > 802< / span > < / a >
< / span > < span id = "DuckDB.Generator-803" > < a href = "#DuckDB.Generator-803" > < span class = "linenos" > 803< / 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 = "DuckDB.Generator-804" > < a href = "#DuckDB.Generator-804" > < span class = "linenos" > 804< / span > < / a > < span class = "n" > multiplier< / 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" > int< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB.Generator-805" > < a href = "#DuckDB.Generator-805" > < span class = "linenos" > 805< / span > < / a > < span class = "n" > unit< / span > < span class = "o" > =< / 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" > lower< / span > < span class = "p" > ()< / span >
< / span > < span id = "DuckDB.Generator-806" > < a href = "#DuckDB.Generator-806" > < span class = "linenos" > 806< / span > < / a >
< / span > < span id = "DuckDB.Generator-807" > < a href = "#DuckDB.Generator-807" > < span class = "linenos" > 807< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / 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 = "DuckDB.Generator-808" > < a href = "#DuckDB.Generator-808" > < span class = "linenos" > 808< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 7< / span >
< / span > < span id = "DuckDB.Generator-809" > < a href = "#DuckDB.Generator-809" > < span class = "linenos" > 809< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " quarter" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-810" > < a href = "#DuckDB.Generator-810" > < span class = "linenos" > 810< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 90< / span >
< / span > < span id = "DuckDB.Generator-811" > < a href = "#DuckDB.Generator-811" > < span class = "linenos" > 811< / span > < / a >
< / span > < span id = "DuckDB.Generator-812" > < a href = "#DuckDB.Generator-812" > < span class = "linenos" > 812< / span > < / a > < span class = "k" > if< / span > < span class = "n" > multiplier< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-813" > < a href = "#DuckDB.Generator-813" > < span class = "linenos" > 813< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > multiplier< / span > < span class = "si" > }< / span > < span class = "s2" > * < / span > < span class = "si" > {< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s1" > ' DAY' < / span > < span class = "p" > )))< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-814" > < a href = "#DuckDB.Generator-814" > < span class = "linenos" > 814< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-815" > < a href = "#DuckDB.Generator-815" > < span class = "linenos" > 815< / 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 = "DuckDB.Generator-816" > < a href = "#DuckDB.Generator-816" > < span class = "linenos" > 816< / span > < / a >
< / span > < span id = "DuckDB.Generator-817" > < a href = "#DuckDB.Generator-817" > < span class = "linenos" > 817< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > columndef_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" > ColumnDef< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > :< / span > < span class = "nb" > str< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-818" > < a href = "#DuckDB.Generator-818" > < span class = "linenos" > 818< / 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" > UserDefinedFunction< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-819" > < a href = "#DuckDB.Generator-819" > < span class = "linenos" > 819< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-820" > < a href = "#DuckDB.Generator-820" > < span class = "linenos" > 820< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > columndef_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-821" > < a href = "#DuckDB.Generator-821" > < span class = "linenos" > 821< / span > < / a >
< / span > < span id = "DuckDB.Generator-822" > < a href = "#DuckDB.Generator-822" > < span class = "linenos" > 822< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > join_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" > Join< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-823" > < a href = "#DuckDB.Generator-823" > < span class = "linenos" > 823< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-824" > < a href = "#DuckDB.Generator-824" > < span class = "linenos" > 824< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > side< / span > < span class = "o" > ==< / span > < span class = "s2" > " LEFT" < / span >
< / span > < span id = "DuckDB.Generator-825" > < a href = "#DuckDB.Generator-825" > < span class = "linenos" > 825< / span > < / a > < span class = "ow" > and< / 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" > " on" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-826" > < a href = "#DuckDB.Generator-826" > < span class = "linenos" > 826< / span > < / a > < span class = "ow" > and< / span > < span class = "nb" > isinstance< / 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" > Unnest< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-827" > < a href = "#DuckDB.Generator-827" > < span class = "linenos" > 827< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-828" > < a href = "#DuckDB.Generator-828" > < span class = "linenos" > 828< / span > < / a > < span class = "c1" > # Some dialects support `LEFT JOIN UNNEST(...)` without an explicit ON clause< / span >
< / span > < span id = "DuckDB.Generator-829" > < a href = "#DuckDB.Generator-829" > < span class = "linenos" > 829< / span > < / a > < span class = "c1" > # DuckDB doesn' t, but we can just add a dummy ON clause that is always true< / span >
< / span > < span id = "DuckDB.Generator-830" > < a href = "#DuckDB.Generator-830" > < span class = "linenos" > 830< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > true< / span > < span class = "p" > ()))< / span >
< / span > < span id = "DuckDB.Generator-831" > < a href = "#DuckDB.Generator-831" > < span class = "linenos" > 831< / span > < / a >
< / span > < span id = "DuckDB.Generator-832" > < a href = "#DuckDB.Generator-832" > < span class = "linenos" > 832< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-833" > < a href = "#DuckDB.Generator-833" > < span class = "linenos" > 833< / span > < / a >
< / span > < span id = "DuckDB.Generator-834" > < a href = "#DuckDB.Generator-834" > < span class = "linenos" > 834< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > generateseries_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" > GenerateSeries< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-835" > < a href = "#DuckDB.Generator-835" > < span class = "linenos" > 835< / span > < / a > < span class = "c1" > # GENERATE_SERIES(a, b) -> [a, b], RANGE(a, b) -> [a, b)< / span >
< / span > < span id = "DuckDB.Generator-836" > < a href = "#DuckDB.Generator-836" > < span class = "linenos" > 836< / 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" > " is_end_exclusive" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-837" > < a href = "#DuckDB.Generator-837" > < span class = "linenos" > 837< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " RANGE" < / 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 = "DuckDB.Generator-838" > < a href = "#DuckDB.Generator-838" > < span class = "linenos" > 838< / span > < / a >
< / span > < span id = "DuckDB.Generator-839" > < a href = "#DuckDB.Generator-839" > < span class = "linenos" > 839< / 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 = "DuckDB.Generator-840" > < a href = "#DuckDB.Generator-840" > < span class = "linenos" > 840< / span > < / a >
< / span > < span id = "DuckDB.Generator-841" > < a href = "#DuckDB.Generator-841" > < span class = "linenos" > 841< / 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 = "DuckDB.Generator-842" > < a href = "#DuckDB.Generator-842" > < span class = "linenos" > 842< / 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 = "DuckDB.Generator-843" > < a href = "#DuckDB.Generator-843" > < span class = "linenos" > 843< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Array< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-844" > < a href = "#DuckDB.Generator-844" > < span class = "linenos" > 844< / span > < / a > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > replace< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > paren< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator-845" > < a href = "#DuckDB.Generator-845" > < span class = "linenos" > 845< / span > < / a >
< / span > < span id = "DuckDB.Generator-846" > < a href = "#DuckDB.Generator-846" > < span class = "linenos" > 846< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / 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 = "DuckDB.Generator-847" > < a href = "#DuckDB.Generator-847" > < span class = "linenos" > 847< / span > < / a >
< / span > < span id = "DuckDB.Generator-848" > < a href = "#DuckDB.Generator-848" > < span class = "linenos" > 848< / 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" > " returns_list_for_maps" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-849" > < a href = "#DuckDB.Generator-849" > < span class = "linenos" > 849< / 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 = "DuckDB.Generator-850" > < a href = "#DuckDB.Generator-850" > < span class = "linenos" > 850< / 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 = "DuckDB.Generator-851" > < a href = "#DuckDB.Generator-851" > < span class = "linenos" > 851< / span > < / a >
< / span > < span id = "DuckDB.Generator-852" > < a href = "#DuckDB.Generator-852" > < span class = "linenos" > 852< / 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 = "DuckDB.Generator-853" > < a href = "#DuckDB.Generator-853" > < span class = "linenos" > 853< / span > < / a >
< / span > < span id = "DuckDB.Generator-854" > < a href = "#DuckDB.Generator-854" > < span class = "linenos" > 854< / 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 = "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" > MAP< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-855" > < a href = "#DuckDB.Generator-855" > < span class = "linenos" > 855< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > bracket< / span > < span class = "si" > }< / span > < span class = "s2" > )[1]" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-856" > < a href = "#DuckDB.Generator-856" > < span class = "linenos" > 856< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-857" > < a href = "#DuckDB.Generator-857" > < span class = "linenos" > 857< / span > < / a > < span class = "k" > return< / span > < span class = "n" > bracket< / span >
< / span > < span id = "DuckDB.Generator-858" > < a href = "#DuckDB.Generator-858" > < span class = "linenos" > 858< / span > < / a >
< / span > < span id = "DuckDB.Generator-859" > < a href = "#DuckDB.Generator-859" > < span class = "linenos" > 859< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > withingroup_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" > WithinGroup< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-860" > < a href = "#DuckDB.Generator-860" > < span class = "linenos" > 860< / span > < / a > < span class = "n" > expression_sql< / 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" > " expression" < / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-861" > < a href = "#DuckDB.Generator-861" > < span class = "linenos" > 861< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-862" > < a href = "#DuckDB.Generator-862" > < span class = "linenos" > 862< / span > < / a > < span class = "n" > func< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "DuckDB.Generator-863" > < a href = "#DuckDB.Generator-863" > < span class = "linenos" > 863< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > func< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PERCENTILES< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-864" > < a href = "#DuckDB.Generator-864" > < span class = "linenos" > 864< / span > < / a > < span class = "c1" > # Make the order key the first arg and slide the fraction to the right< / span >
< / span > < span id = "DuckDB.Generator-865" > < a href = "#DuckDB.Generator-865" > < span class = "linenos" > 865< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/aggregates#ordered-set-aggregate-functions< / span >
< / span > < span id = "DuckDB.Generator-866" > < a href = "#DuckDB.Generator-866" > < span class = "linenos" > 866< / span > < / a > < span class = "n" > order_col< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > find< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Ordered< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-867" > < a href = "#DuckDB.Generator-867" > < span class = "linenos" > 867< / span > < / a > < span class = "k" > if< / span > < span class = "n" > order_col< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-868" > < a href = "#DuckDB.Generator-868" > < span class = "linenos" > 868< / span > < / a > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ,< / span > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-869" > < a href = "#DuckDB.Generator-869" > < span class = "linenos" > 869< / span > < / a > < span class = "n" > func< / 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" > order_col< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-870" > < a href = "#DuckDB.Generator-870" > < span class = "linenos" > 870< / span > < / a >
< / span > < span id = "DuckDB.Generator-871" > < a href = "#DuckDB.Generator-871" > < span class = "linenos" > 871< / 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 class = "o" > .< / span > < span class = "n" > rstrip< / span > < span class = "p" > (< / span > < span class = "s2" > " )" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-872" > < a href = "#DuckDB.Generator-872" > < span class = "linenos" > 872< / span > < / a >
< / span > < span id = "DuckDB.Generator-873" > < a href = "#DuckDB.Generator-873" > < span class = "linenos" > 873< / 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" > expression_sql< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
< / span > < span id = "DuckDB.Generator-874" > < a href = "#DuckDB.Generator-874" > < span class = "linenos" > 874< / span > < / a >
< / span > < span id = "DuckDB.Generator-875" > < a href = "#DuckDB.Generator-875" > < span class = "linenos" > 875< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > length_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" > Length< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-876" > < a href = "#DuckDB.Generator-876" > < span class = "linenos" > 876< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-877" > < a href = "#DuckDB.Generator-877" > < span class = "linenos" > 877< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-878" > < a href = "#DuckDB.Generator-878" > < span class = "linenos" > 878< / span > < / a > < span class = "c1" > # Dialects like BQ and Snowflake also accept binary values as args, so< / span >
< / span > < span id = "DuckDB.Generator-879" > < a href = "#DuckDB.Generator-879" > < span class = "linenos" > 879< / span > < / a > < span class = "c1" > # DDB will attempt to infer the type or resort to case/when resolution< / span >
< / span > < span id = "DuckDB.Generator-880" > < a href = "#DuckDB.Generator-880" > < span class = "linenos" > 880< / 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" > " binary" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-881" > < a href = "#DuckDB.Generator-881" > < span class = "linenos" > 881< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-882" > < a href = "#DuckDB.Generator-882" > < span class = "linenos" > 882< / span > < / a >
< / span > < span id = "DuckDB.Generator-883" > < a href = "#DuckDB.Generator-883" > < span class = "linenos" > 883< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-884" > < a href = "#DuckDB.Generator-884" > < span class = "linenos" > 884< / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-885" > < a href = "#DuckDB.Generator-885" > < span class = "linenos" > 885< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-886" > < a href = "#DuckDB.Generator-886" > < span class = "linenos" > 886< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-887" > < a href = "#DuckDB.Generator-887" > < span class = "linenos" > 887< / span > < / a >
< / span > < span id = "DuckDB.Generator-888" > < a href = "#DuckDB.Generator-888" > < span class = "linenos" > 888< / span > < / a > < span class = "k" > if< / span > < span class = "n" > arg< / 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 = "DuckDB.Generator-889" > < a href = "#DuckDB.Generator-889" > < span class = "linenos" > 889< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-890" > < a href = "#DuckDB.Generator-890" > < span class = "linenos" > 890< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-891" > < a href = "#DuckDB.Generator-891" > < span class = "linenos" > 891< / span > < / a > < span class = "c1" > # We need these casts to make duckdb' s static type checker happy< / span >
< / span > < span id = "DuckDB.Generator-892" > < a href = "#DuckDB.Generator-892" > < span class = "linenos" > 892< / span > < / a > < span class = "n" > blob< / 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" > arg< / 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" > VARBINARY< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-893" > < a href = "#DuckDB.Generator-893" > < span class = "linenos" > 893< / span > < / a > < span class = "n" > varchar< / 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" > arg< / 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" > VARCHAR< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-894" > < a href = "#DuckDB.Generator-894" > < span class = "linenos" > 894< / span > < / a >
< / span > < span id = "DuckDB.Generator-895" > < a href = "#DuckDB.Generator-895" > < span class = "linenos" > 895< / span > < / a > < span class = "n" > case< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-896" > < a href = "#DuckDB.Generator-896" > < span class = "linenos" > 896< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > case< / 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" > " TYPEOF" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator-897" > < a href = "#DuckDB.Generator-897" > < span class = "linenos" > 897< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-898" > < a href = "#DuckDB.Generator-898" > < span class = "linenos" > 898< / span > < / a > < span class = "s2" > " ' VARCHAR' " < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Anonymous< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "s2" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > varchar< / span > < span class = "p" > ])< / span >
< / span > < span id = "DuckDB.Generator-899" > < a href = "#DuckDB.Generator-899" > < span class = "linenos" > 899< / span > < / a > < span class = "p" > )< / span > < span class = "c1" > # anonymous to break length_sql recursion< / span >
< / span > < span id = "DuckDB.Generator-900" > < a href = "#DuckDB.Generator-900" > < span class = "linenos" > 900< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span > < span class = "s2" > " ' BLOB' " < / 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" > " OCTET_LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > blob< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator-901" > < a href = "#DuckDB.Generator-901" > < span class = "linenos" > 901< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-902" > < a href = "#DuckDB.Generator-902" > < span class = "linenos" > 902< / span > < / a >
< / span > < span id = "DuckDB.Generator-903" > < a href = "#DuckDB.Generator-903" > < span class = "linenos" > 903< / 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" > case< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-904" > < a href = "#DuckDB.Generator-904" > < span class = "linenos" > 904< / span > < / a >
< / span > < span id = "DuckDB.Generator-905" > < a href = "#DuckDB.Generator-905" > < span class = "linenos" > 905< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > objectinsert_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" > ObjectInsert< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-906" > < a href = "#DuckDB.Generator-906" > < span class = "linenos" > 906< / 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 = "DuckDB.Generator-907" > < a href = "#DuckDB.Generator-907" > < span class = "linenos" > 907< / span > < / a > < span class = "n" > key< / 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" > " key" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-908" > < a href = "#DuckDB.Generator-908" > < span class = "linenos" > 908< / span > < / a > < span class = "n" > key_sql< / span > < span class = "o" > =< / span > < span class = "n" > key< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > key< / 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 = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "DuckDB.Generator-909" > < a href = "#DuckDB.Generator-909" > < span class = "linenos" > 909< / span > < / a > < span class = "n" > value_sql< / 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" > " value" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-910" > < a href = "#DuckDB.Generator-910" > < span class = "linenos" > 910< / span > < / a >
< / span > < span id = "DuckDB.Generator-911" > < a href = "#DuckDB.Generator-911" > < span class = "linenos" > 911< / span > < / a > < span class = "n" > kv_sql< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > key_sql< / span > < span class = "si" > }< / span > < span class = "s2" > := < / span > < span class = "si" > {< / span > < span class = "n" > value_sql< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "DuckDB.Generator-912" > < a href = "#DuckDB.Generator-912" > < span class = "linenos" > 912< / span > < / a >
< / span > < span id = "DuckDB.Generator-913" > < a href = "#DuckDB.Generator-913" > < span class = "linenos" > 913< / span > < / a > < span class = "c1" > # If the input struct is empty e.g. transpiling OBJECT_INSERT(OBJECT_CONSTRUCT(), key, value) from Snowflake< / span >
< / span > < span id = "DuckDB.Generator-914" > < a href = "#DuckDB.Generator-914" > < span class = "linenos" > 914< / span > < / a > < span class = "c1" > # then we can generate STRUCT_PACK which will build it since STRUCT_INSERT({}, key := value) is not valid DuckDB< / span >
< / span > < span id = "DuckDB.Generator-915" > < a href = "#DuckDB.Generator-915" > < span class = "linenos" > 915< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Struct< / span > < span class = "p" > )< / span > < span class = "ow" > and< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-916" > < a href = "#DuckDB.Generator-916" > < span class = "linenos" > 916< / 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" > " STRUCT_PACK" < / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-917" > < a href = "#DuckDB.Generator-917" > < span class = "linenos" > 917< / span > < / a >
< / span > < span id = "DuckDB.Generator-918" > < a href = "#DuckDB.Generator-918" > < span class = "linenos" > 918< / 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" > " STRUCT_INSERT" < / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-919" > < a href = "#DuckDB.Generator-919" > < span class = "linenos" > 919< / span > < / a >
< / span > < span id = "DuckDB.Generator-920" > < a href = "#DuckDB.Generator-920" > < span class = "linenos" > 920< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > unnest_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" > Unnest< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-921" > < a href = "#DuckDB.Generator-921" > < span class = "linenos" > 921< / span > < / a > < span class = "n" > explode_array< / 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" > " explode_array" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-922" > < a href = "#DuckDB.Generator-922" > < span class = "linenos" > 922< / span > < / a > < span class = "k" > if< / span > < span class = "n" > explode_array< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-923" > < a href = "#DuckDB.Generator-923" > < span class = "linenos" > 923< / span > < / a > < span class = "c1" > # In BigQuery, UNNESTing a nested array leads to explosion of the top-level array & struct< / span >
< / span > < span id = "DuckDB.Generator-924" > < a href = "#DuckDB.Generator-924" > < span class = "linenos" > 924< / span > < / a > < span class = "c1" > # This is transpiled to DDB by transforming " FROM UNNEST(...)" to " FROM (SELECT UNNEST(..., max_depth => 2))" < / span >
< / span > < span id = "DuckDB.Generator-925" > < a href = "#DuckDB.Generator-925" > < span class = "linenos" > 925< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-926" > < a href = "#DuckDB.Generator-926" > < span class = "linenos" > 926< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Kwarg< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " max_depth" < / span > < span class = "p" > ),< / span > < span class = "n" > expression< / 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" > 2< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator-927" > < a href = "#DuckDB.Generator-927" > < span class = "linenos" > 927< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-928" > < a href = "#DuckDB.Generator-928" > < span class = "linenos" > 928< / span > < / a >
< / span > < span id = "DuckDB.Generator-929" > < a href = "#DuckDB.Generator-929" > < span class = "linenos" > 929< / span > < / a > < span class = "c1" > # If BQ' s UNNEST is aliased, we transform it from a column alias to a table alias in DDB< / span >
< / span > < span id = "DuckDB.Generator-930" > < a href = "#DuckDB.Generator-930" > < span class = "linenos" > 930< / span > < / a > < span class = "n" > alias< / 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" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-931" > < a href = "#DuckDB.Generator-931" > < span class = "linenos" > 931< / span > < / a > < span class = "k" > if< / span > < span class = "n" > alias< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-932" > < a href = "#DuckDB.Generator-932" > < span class = "linenos" > 932< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-933" > < a href = "#DuckDB.Generator-933" > < span class = "linenos" > 933< / span > < / a > < span class = "n" > alias< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableAlias< / 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" > alias< / 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" > " columns" < / span > < span class = "p" > ),< / span > < span class = "mi" > 0< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator-934" > < a href = "#DuckDB.Generator-934" > < span class = "linenos" > 934< / span > < / a >
< / span > < span id = "DuckDB.Generator-935" > < a href = "#DuckDB.Generator-935" > < span class = "linenos" > 935< / span > < / a > < span class = "n" > unnest_sql< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-936" > < a href = "#DuckDB.Generator-936" > < span class = "linenos" > 936< / span > < / a > < span class = "n" > select< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > (< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > ])< / span > < span class = "o" > .< / span > < span class = "n" > subquery< / span > < span class = "p" > (< / span > < span class = "n" > alias< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-937" > < a href = "#DuckDB.Generator-937" > < span class = "linenos" > 937< / 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" > select< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-938" > < a href = "#DuckDB.Generator-938" > < span class = "linenos" > 938< / span > < / a >
< / span > < span id = "DuckDB.Generator-939" > < a href = "#DuckDB.Generator-939" > < span class = "linenos" > 939< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-940" > < a href = "#DuckDB.Generator-940" > < span class = "linenos" > 940< / span > < / a >
< / span > < span id = "DuckDB.Generator-941" > < a href = "#DuckDB.Generator-941" > < span class = "linenos" > 941< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > ignorenulls_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" > IgnoreNulls< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-942" > < a href = "#DuckDB.Generator-942" > < span class = "linenos" > 942< / 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" > this< / span > < span class = "p" > ,< / span > < span class = "n" > WINDOW_FUNCS_WITH_IGNORE_NULLS< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-943" > < a href = "#DuckDB.Generator-943" > < span class = "linenos" > 943< / span > < / a > < span class = "c1" > # DuckDB should render IGNORE NULLS only for the general-purpose< / span >
< / span > < span id = "DuckDB.Generator-944" > < a href = "#DuckDB.Generator-944" > < span class = "linenos" > 944< / span > < / a > < span class = "c1" > # window functions that accept it e.g. FIRST_VALUE(... IGNORE NULLS) OVER (...)< / span >
< / span > < span id = "DuckDB.Generator-945" > < a href = "#DuckDB.Generator-945" > < span class = "linenos" > 945< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > ignorenulls_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-946" > < a href = "#DuckDB.Generator-946" > < span class = "linenos" > 946< / span > < / a >
< / span > < span id = "DuckDB.Generator-947" > < a href = "#DuckDB.Generator-947" > < span class = "linenos" > 947< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-948" > < a href = "#DuckDB.Generator-948" > < span class = "linenos" > 948< / span > < / a >
< / span > < span id = "DuckDB.Generator-949" > < a href = "#DuckDB.Generator-949" > < span class = "linenos" > 949< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > arraytostring_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" > ArrayToString< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-950" > < a href = "#DuckDB.Generator-950" > < span class = "linenos" > 950< / 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 = "DuckDB.Generator-951" > < a href = "#DuckDB.Generator-951" > < span class = "linenos" > 951< / span > < / a > < span class = "n" > null_text< / 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" > " null" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-952" > < a href = "#DuckDB.Generator-952" > < span class = "linenos" > 952< / span > < / a >
< / span > < span id = "DuckDB.Generator-953" > < a href = "#DuckDB.Generator-953" > < span class = "linenos" > 953< / span > < / a > < span class = "k" > if< / span > < span class = "n" > null_text< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-954" > < a href = "#DuckDB.Generator-954" > < span class = "linenos" > 954< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " LIST_TRANSFORM(< / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }< / span > < span class = "s2" > , x -> COALESCE(x, < / span > < span class = "si" > {< / span > < span class = "n" > null_text< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator-955" > < a href = "#DuckDB.Generator-955" > < span class = "linenos" > 955< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator-956" > < a href = "#DuckDB.Generator-956" > < span class = "linenos" > 956< / 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_TO_STRING" < / span > < span class = "p" > ,< / 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 > < span id = "DuckDB.Generator-957" > < a href = "#DuckDB.Generator-957" > < span class = "linenos" > 957< / span > < / a >
< / span > < span id = "DuckDB.Generator-958" > < a href = "#DuckDB.Generator-958" > < span class = "linenos" > 958< / span > < / a > < span class = "nd" > @unsupported_args< / span > < span class = "p" > (< / span > < span class = "s2" > " position" < / span > < span class = "p" > ,< / span > < span class = "s2" > " occurrence" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-959" > < a href = "#DuckDB.Generator-959" > < span class = "linenos" > 959< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > regexpextract_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" > RegexpExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator-960" > < a href = "#DuckDB.Generator-960" > < span class = "linenos" > 960< / span > < / a > < span class = "n" > group< / 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" > " group" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-961" > < a href = "#DuckDB.Generator-961" > < span class = "linenos" > 961< / span > < / a > < span class = "n" > params< / 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" > " parameters" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-962" > < a href = "#DuckDB.Generator-962" > < span class = "linenos" > 962< / span > < / a >
< / span > < span id = "DuckDB.Generator-963" > < a href = "#DuckDB.Generator-963" > < span class = "linenos" > 963< / span > < / a > < span class = "c1" > # Do not render group if there is no following argument,< / span >
< / span > < span id = "DuckDB.Generator-964" > < a href = "#DuckDB.Generator-964" > < span class = "linenos" > 964< / span > < / a > < span class = "c1" > # and it' s the default value for this dialect< / span >
< / span > < span id = "DuckDB.Generator-965" > < a href = "#DuckDB.Generator-965" > < span class = "linenos" > 965< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator-966" > < a href = "#DuckDB.Generator-966" > < span class = "linenos" > 966< / span > < / a > < span class = "ow" > not< / span > < span class = "n" > params< / span >
< / span > < span id = "DuckDB.Generator-967" > < a href = "#DuckDB.Generator-967" > < span class = "linenos" > 967< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span >
< / span > < span id = "DuckDB.Generator-968" > < a href = "#DuckDB.Generator-968" > < span class = "linenos" > 968< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "o" > ==< / span > < span class = "nb" > str< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > REGEXP_EXTRACT_DEFAULT_GROUP< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator-969" > < a href = "#DuckDB.Generator-969" > < span class = "linenos" > 969< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator-970" > < a href = "#DuckDB.Generator-970" > < span class = "linenos" > 970< / span > < / a > < span class = "n" > group< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB.Generator-971" > < a href = "#DuckDB.Generator-971" > < span class = "linenos" > 971< / 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 = "DuckDB.Generator-972" > < a href = "#DuckDB.Generator-972" > < span class = "linenos" > 972< / span > < / a > < span class = "s2" > " REGEXP_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 = "n" > group< / span > < span class = "p" > ,< / span > < span class = "n" > params< / span >
< / span > < span id = "DuckDB.Generator-973" > < a href = "#DuckDB.Generator-973" > < span class = "linenos" > 973< / 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 21:29:39 +01:00
< div id = "DuckDB.Generator.PARAMETER_TOKEN" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > PARAMETER_TOKEN< / span > =
< span class = "default_value" > ' $' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.PARAMETER_TOKEN" > < / a >
< / div >
< div id = "DuckDB.Generator.NAMED_PLACEHOLDER_TOKEN" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > NAMED_PLACEHOLDER_TOKEN< / span > =
< span class = "default_value" > ' $' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.NAMED_PLACEHOLDER_TOKEN" > < / a >
< / div >
2025-02-13 20:15:27 +01:00
< div id = "DuckDB.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 = "#DuckDB.Generator.JOIN_HINTS" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.TABLE_HINTS" > < / a >
2025-02-13 20:43:05 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.QUERY_HINTS" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.Generator.LIMIT_FETCH" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > LIMIT_FETCH< / span > =
< span class = "default_value" > ' LIMIT' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.LIMIT_FETCH" > < / a >
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.STRUCT_DELIMITER" > < / a >
< / div >
< div id = "DuckDB.Generator.RENAME_TABLE_WITH_DB" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > RENAME_TABLE_WITH_DB< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.RENAME_TABLE_WITH_DB" > < / a >
2025-02-13 20:58:22 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.NVL2_SUPPORTED" > < / a >
2025-02-13 21:03:38 +01:00
< / div >
< div id = "DuckDB.Generator.SEMI_ANTI_JOIN_WITH_SIDE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SEMI_ANTI_JOIN_WITH_SIDE< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.SEMI_ANTI_JOIN_WITH_SIDE" > < / a >
2025-02-13 21:19:14 +01:00
< / div >
< div id = "DuckDB.Generator.TABLESAMPLE_KEYWORDS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TABLESAMPLE_KEYWORDS< / span > =
< span class = "default_value" > ' USING SAMPLE' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.TABLESAMPLE_KEYWORDS" > < / a >
< / div >
< div id = "DuckDB.Generator.TABLESAMPLE_SEED_KEYWORD" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TABLESAMPLE_SEED_KEYWORD< / span > =
< span class = "default_value" > ' REPEATABLE' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.TABLESAMPLE_SEED_KEYWORD" > < / a >
< / div >
< div id = "DuckDB.Generator.LAST_DAY_SUPPORTS_DATE_PART" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > LAST_DAY_SUPPORTS_DATE_PART< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.LAST_DAY_SUPPORTS_DATE_PART" > < / a >
2025-02-13 21:19:58 +01:00
< / div >
< div id = "DuckDB.Generator.JSON_KEY_VALUE_PAIR_SEP" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > JSON_KEY_VALUE_PAIR_SEP< / span > =
< span class = "default_value" > ' ,' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.JSON_KEY_VALUE_PAIR_SEP" > < / a >
2025-02-13 21:20:36 +01:00
< / div >
< div id = "DuckDB.Generator.IGNORE_NULLS_IN_FUNC" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > IGNORE_NULLS_IN_FUNC< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.IGNORE_NULLS_IN_FUNC" > < / a >
< / div >
< div id = "DuckDB.Generator.JSON_PATH_BRACKETED_KEY_SUPPORTED" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > JSON_PATH_BRACKETED_KEY_SUPPORTED< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.JSON_PATH_BRACKETED_KEY_SUPPORTED" > < / a >
< / div >
< div id = "DuckDB.Generator.SUPPORTS_CREATE_TABLE_LIKE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_CREATE_TABLE_LIKE< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.SUPPORTS_CREATE_TABLE_LIKE" > < / a >
2025-02-13 21:21:45 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.MULTI_ARG_DISTINCT" > < / a >
2025-02-13 21:29:39 +01:00
< / div >
< div id = "DuckDB.Generator.CAN_IMPLEMENT_ARRAY_ANY" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > CAN_IMPLEMENT_ARRAY_ANY< / span > =
< span class = "default_value" > True< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.CAN_IMPLEMENT_ARRAY_ANY" > < / a >
2025-02-13 21:30:28 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.SUPPORTS_TO_NUMBER" > < / a >
2025-02-13 21:33:25 +01:00
< / div >
< div id = "DuckDB.Generator.COPY_HAS_INTO_KEYWORD" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > COPY_HAS_INTO_KEYWORD< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.COPY_HAS_INTO_KEYWORD" > < / a >
2025-02-13 21:35:32 +01:00
< / div >
< div id = "DuckDB.Generator.STAR_EXCEPT" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > STAR_EXCEPT< / span > =
< span class = "default_value" > ' EXCLUDE' < / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.STAR_EXCEPT" > < / a >
2025-02-13 21:43:00 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.PAD_FILL_PATTERN_IS_REQUIRED" > < / a >
2025-02-13 21:52:32 +01:00
< / div >
< div id = "DuckDB.Generator.ARRAY_CONCAT_IS_VAR_LEN" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > ARRAY_CONCAT_IS_VAR_LEN< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.ARRAY_CONCAT_IS_VAR_LEN" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.Generator.TRANSFORMS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TRANSFORMS< / span > =
< input id = "DuckDB.Generator.TRANSFORMS-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 = "DuckDB.Generator.TRANSFORMS-view-value" > < / label > < span class = "default_value" > {< class ' < a href = "../expressions.html#JSONPathKey" > sqlglot.expressions.JSONPathKey< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathRoot" > sqlglot.expressions.JSONPathRoot< / a > ' > : < function < lambda> > , < class ' < a href = "../expressions.html#JSONPathSubscript" > sqlglot.expressions.JSONPathSubscript< / 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 no_comment_column_constraint_sql> , < 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#DynamicProperty" > sqlglot.expressions.DynamicProperty< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#EmptyProperty" > sqlglot.expressions.EmptyProperty< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#EncodeColumnConstraint" > sqlglot.expressions.EncodeColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#EphemeralColumnConstraint" > sqlglot.expressions.EphemeralColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#ExcludeColumnConstraint" > sqlglot.expressions.ExcludeColumnConstraint< / a > ' > : < function Generator.< lambda> > , < class ' < a href = "../expressions.html#ExecuteAsProperty" > sqlglot.expressions.E
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.TRANSFORMS" > < / a >
2025-02-13 21:20:36 +01:00
< / div >
< div id = "DuckDB.Generator.SUPPORTED_JSON_PATH_PARTS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTED_JSON_PATH_PARTS< / span > =
< input id = "DuckDB.Generator.SUPPORTED_JSON_PATH_PARTS-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 = "DuckDB.Generator.SUPPORTED_JSON_PATH_PARTS-view-value" > < / label > < span class = "default_value" > {< class ' < a href = "../expressions.html#JSONPathWildcard" > sqlglot.expressions.JSONPathWildcard< / a > ' > , < class ' < a href = "../expressions.html#JSONPathKey" > sqlglot.expressions.JSONPathKey< / a > ' > , < class ' < a href = "../expressions.html#JSONPathSubscript" > sqlglot.expressions.JSONPathSubscript< / a > ' > , < class ' < a href = "../expressions.html#JSONPathRoot" > sqlglot.expressions.JSONPathRoot< / a > ' > }< / span >
2025-02-13 21:20:36 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.SUPPORTED_JSON_PATH_PARTS" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.Generator.TYPE_MAPPING" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TYPE_MAPPING< / span > =
< input id = "DuckDB.Generator.TYPE_MAPPING-view-value" class = "view-value-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:41:14 +01:00
< label class = "view-value-button pdoc-button" for = "DuckDB.Generator.TYPE_MAPPING-view-value" > < / label > < span class = "default_value" > {< Type.NCHAR: ' NCHAR' > : ' TEXT' , < Type.NVARCHAR: ' NVARCHAR' > : ' TEXT' , < 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' > : ' BLOB' , < Type.BINARY: ' BINARY' > : ' BLOB' , < Type.BPCHAR: ' BPCHAR' > : ' TEXT' , < Type.CHAR: ' CHAR' > : ' TEXT' , < Type.FLOAT: ' FLOAT' > : ' REAL' , < Type.UINT: ' UINT' > : ' UINTEGER' , < Type.VARBINARY: ' VARBINARY' > : ' BLOB' , < Type.VARCHAR: ' VARCHAR' > : ' TEXT' , < Type.TIMESTAMPNTZ: ' TIMESTAMPNTZ' > : ' TIMESTAMP' , < Type.TIMESTAMP_S: ' TIMESTAMP_S' > : ' TIMESTAMP_S' , < Type.TIMESTAMP_MS: ' TIMESTAMP_MS' > : ' TIMESTAMP_MS' , < Type.TIMESTAMP_NS: ' TIMESTAMP_NS' > : ' TIMESTAMP_NS' }< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.TYPE_MAPPING" > < / a >
2025-02-13 21:37:40 +01:00
< / div >
< div id = "DuckDB.Generator.RESERVED_KEYWORDS" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > RESERVED_KEYWORDS< / span > =
< input id = "DuckDB.Generator.RESERVED_KEYWORDS-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 = "DuckDB.Generator.RESERVED_KEYWORDS-view-value" > < / label > < span class = "default_value" > {' false_p' , ' offset' , ' create_p' , ' limit' , ' for' , ' all' , ' session_user' , ' current_catalog' , ' from' , ' primary' , ' asc_p' , ' analyse' , ' order' , ' select' , ' lateral_p' , ' localtimestamp' , ' current_user' , ' some' , ' in_p' , ' collate' , ' group_p' , ' references' , ' and' , ' to' , ' deferrable' , ' current_timestamp' , ' union' , ' localtime' , ' unique' , ' placing' , ' null_p' , ' asymmetric' , ' table' , ' symmetric' , ' default' , ' distinct' , ' constraint' , ' both' , ' into' , ' trailing' , ' initially' , ' array' , ' current_date' , ' else' , ' fetch' , ' where' , ' user' , ' only' , ' on' , ' current_time' , ' variadic' , ' desc_p' , ' when' , ' window' , ' foreign' , ' end_p' , ' grant' , ' having' , ' true_p' , ' leading' , ' case' , ' using' , ' analyze' , ' or' , ' except' , ' column' , ' as' , ' not' , ' do' , ' with' , ' cast' , ' current_role' , ' intersect' , ' any' , ' then' , ' check_p' , ' returning' }< / span >
2025-02-13 21:37:40 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.RESERVED_KEYWORDS" > < / a >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.Generator.UNWRAPPED_INTERVAL_VALUES" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > UNWRAPPED_INTERVAL_VALUES< / span > =
2025-02-13 21:30:28 +01:00
< span class = "default_value" > (< class ' < a href = "../expressions.html#Literal" > sqlglot.expressions.Literal< / a > ' > , < class ' < a href = "../expressions.html#Paren" > sqlglot.expressions.Paren< / a > ' > )< / span >
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.UNWRAPPED_INTERVAL_VALUES" > < / a >
< / div >
< div id = "DuckDB.Generator.PROPERTIES_LOCATION" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > PROPERTIES_LOCATION< / span > =
< input id = "DuckDB.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 = "DuckDB.Generator.PROPERTIES_LOCATION-view-value" > < / label > < span class = "default_value" > {< class ' < a href = "../expressions.html#AllowedValuesProperty" > sqlglot.expressions.AllowedValuesProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#AlgorithmProperty" > sqlglot.expressions.AlgorithmProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#AutoIncrementProperty" > sqlglot.expressions.AutoIncrementProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#AutoRefreshProperty" > sqlglot.expressions.AutoRefreshProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#BackupProperty" > sqlglot.expressions.BackupProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#BlockCompressionProperty" > sqlglot.expressions.BlockCompressionProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#CharacterSetProperty" > sqlglot.expressions.CharacterSetProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#ChecksumProperty" > sqlglot.expressions.ChecksumProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#CollateProperty" > sqlglot.expressions.CollateProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#CopyGrantsProperty" > sqlglot.expressions.CopyGrantsProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#Cluster" > sqlglot.expressions.Cluster< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#ClusteredByProperty" > sqlglot.expressions.ClusteredByProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DistributedByProperty" > sqlglot.expressions.DistributedByProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DuplicateKeyProperty" > sqlglot.expressions.DuplicateKeyProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DataBlocksizeProperty" > sqlglot.expressions.DataBlocksizeProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DataDeletionProperty" > sqlglot.expressions.DataDeletionProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DefinerProperty" > sqlglot.expressions.DefinerProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DictRange" > sqlglot.expressions.DictRange< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DictProperty" > sqlglot.expressions.DictProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DynamicProperty" > sqlglot.expressions.DynamicProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DistKeyProperty" > sqlglot.expressions.DistKeyProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#DistStyleProperty" > sqlglot.expressions.DistStyleProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#EmptyProperty" > sqlglot.expressions.EmptyProperty< / a > ' > : < Location.UNSUPPORTED: ' UNSUPPORTED' > , < class ' < a href = "../expressions.html#EngineProperty" > sqlglot.expressions.EngineP
2025-02-13 20:15:27 +01:00
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.PROPERTIES_LOCATION" > < / a >
2025-02-13 21:52:32 +01:00
< / div >
< div id = "DuckDB.Generator.fromiso8601timestamp_sql" class = "classattr" >
< input id = "DuckDB.Generator.fromiso8601timestamp_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" > fromiso8601timestamp_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#FromISO8601Timestamp" > sqlglot.expressions.FromISO8601Timestamp< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.fromiso8601timestamp_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.fromiso8601timestamp_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.fromiso8601timestamp_sql-737" > < a href = "#DuckDB.Generator.fromiso8601timestamp_sql-737" > < span class = "linenos" > 737< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > fromiso8601timestamp_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" > FromISO8601Timestamp< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.fromiso8601timestamp_sql-738" > < a href = "#DuckDB.Generator.fromiso8601timestamp_sql-738" > < span class = "linenos" > 738< / 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" > 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" > TIMESTAMPTZ< / span > < span class = "p" > ))< / span >
2025-02-13 21:52:32 +01:00
< / span > < / pre > < / div >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "DuckDB.Generator.strtotime_sql" class = "classattr" >
< input id = "DuckDB.Generator.strtotime_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" > strtotime_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#StrToTime" > sqlglot.expressions.StrToTime< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.strtotime_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.strtotime_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.strtotime_sql-740" > < a href = "#DuckDB.Generator.strtotime_sql-740" > < span class = "linenos" > 740< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtotime_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" > StrToTime< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.strtotime_sql-741" > < a href = "#DuckDB.Generator.strtotime_sql-741" > < span class = "linenos" > 741< / 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 = "DuckDB.Generator.strtotime_sql-742" > < a href = "#DuckDB.Generator.strtotime_sql-742" > < span class = "linenos" > 742< / span > < / a > < span class = "n" > formatted_time< / 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 = "DuckDB.Generator.strtotime_sql-743" > < a href = "#DuckDB.Generator.strtotime_sql-743" > < span class = "linenos" > 743< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS TIMESTAMP)" < / span >
< / span > < span id = "DuckDB.Generator.strtotime_sql-744" > < a href = "#DuckDB.Generator.strtotime_sql-744" > < span class = "linenos" > 744< / span > < / a > < span class = "k" > return< / 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 >
2025-02-13 21:41:14 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.strtodate_sql" class = "classattr" >
< input id = "DuckDB.Generator.strtodate_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" > strtodate_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#StrToDate" > sqlglot.expressions.StrToDate< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.strtodate_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.strtodate_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.strtodate_sql-746" > < a href = "#DuckDB.Generator.strtodate_sql-746" > < span class = "linenos" > 746< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > strtodate_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" > StrToDate< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.strtodate_sql-747" > < a href = "#DuckDB.Generator.strtodate_sql-747" > < span class = "linenos" > 747< / 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 = "DuckDB.Generator.strtodate_sql-748" > < a href = "#DuckDB.Generator.strtodate_sql-748" > < span class = "linenos" > 748< / span > < / a > < span class = "n" > formatted_time< / 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 = "DuckDB.Generator.strtodate_sql-749" > < a href = "#DuckDB.Generator.strtodate_sql-749" > < span class = "linenos" > 749< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " CAST(< / 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" > ' TRY_STRPTIME' < / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > formatted_time< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
< / span > < span id = "DuckDB.Generator.strtodate_sql-750" > < a href = "#DuckDB.Generator.strtodate_sql-750" > < span class = "linenos" > 750< / span > < / a > < span class = "k" > return< / 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" > expression< / span > < span class = "p" > )< / span > < span class = "si" > }< / span > < span class = "s2" > AS DATE)" < / span >
2025-02-13 21:41:14 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.parsejson_sql" class = "classattr" >
< input id = "DuckDB.Generator.parsejson_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" > parsejson_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#ParseJSON" > sqlglot.expressions.ParseJSON< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.parsejson_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.parsejson_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.parsejson_sql-752" > < a href = "#DuckDB.Generator.parsejson_sql-752" > < span class = "linenos" > 752< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > parsejson_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" > ParseJSON< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.parsejson_sql-753" > < a href = "#DuckDB.Generator.parsejson_sql-753" > < span class = "linenos" > 753< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "DuckDB.Generator.parsejson_sql-754" > < a href = "#DuckDB.Generator.parsejson_sql-754" > < span class = "linenos" > 754< / 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 = "DuckDB.Generator.parsejson_sql-755" > < a href = "#DuckDB.Generator.parsejson_sql-755" > < span class = "linenos" > 755< / 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" > case< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > when< / 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 = "s2" > " json_valid" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ),< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span > < span class = "o" > .< / span > < span class = "n" > else_< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > null< / span > < span class = "p" > ()))< / span >
< / span > < span id = "DuckDB.Generator.parsejson_sql-756" > < a href = "#DuckDB.Generator.parsejson_sql-756" > < span class = "linenos" > 756< / 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" > " JSON" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
2025-02-13 21:41:14 +01:00
< / span > < / pre > < / div >
2025-02-13 21:19:14 +01:00
< / div >
< div id = "DuckDB.Generator.timefromparts_sql" class = "classattr" >
< input id = "DuckDB.Generator.timefromparts_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" > timefromparts_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#TimeFromParts" > sqlglot.expressions.TimeFromParts< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.timefromparts_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.timefromparts_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.timefromparts_sql-758" > < a href = "#DuckDB.Generator.timefromparts_sql-758" > < span class = "linenos" > 758< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timefromparts_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" > TimeFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.timefromparts_sql-759" > < a href = "#DuckDB.Generator.timefromparts_sql-759" > < span class = "linenos" > 759< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.timefromparts_sql-760" > < a href = "#DuckDB.Generator.timefromparts_sql-760" > < span class = "linenos" > 760< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.timefromparts_sql-761" > < a href = "#DuckDB.Generator.timefromparts_sql-761" > < span class = "linenos" > 761< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.timefromparts_sql-762" > < a href = "#DuckDB.Generator.timefromparts_sql-762" > < span class = "linenos" > 762< / span > < / a > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > args< / span > < span class = "p" > [< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ]< / span > < span class = "o" > +< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.timefromparts_sql-763" > < a href = "#DuckDB.Generator.timefromparts_sql-763" > < span class = "linenos" > 763< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.timefromparts_sql-764" > < a href = "#DuckDB.Generator.timefromparts_sql-764" > < span class = "linenos" > 764< / span > < / a >
< / span > < span id = "DuckDB.Generator.timefromparts_sql-765" > < a href = "#DuckDB.Generator.timefromparts_sql-765" > < span class = "linenos" > 765< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIME" < / 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:19:14 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.timestampfromparts_sql" class = "classattr" >
< input id = "DuckDB.Generator.timestampfromparts_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" > timestampfromparts_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#TimestampFromParts" > sqlglot.expressions.TimestampFromParts< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.timestampfromparts_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.timestampfromparts_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.timestampfromparts_sql-767" > < a href = "#DuckDB.Generator.timestampfromparts_sql-767" > < span class = "linenos" > 767< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > timestampfromparts_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" > TimestampFromParts< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-768" > < a href = "#DuckDB.Generator.timestampfromparts_sql-768" > < span class = "linenos" > 768< / span > < / a > < span class = "n" > sec< / 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" > " sec" < / span > < span class = "p" > ]< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-769" > < a href = "#DuckDB.Generator.timestampfromparts_sql-769" > < span class = "linenos" > 769< / span > < / a >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-770" > < a href = "#DuckDB.Generator.timestampfromparts_sql-770" > < span class = "linenos" > 770< / span > < / a > < span class = "n" > milli< / 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" > " milli" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-771" > < a href = "#DuckDB.Generator.timestampfromparts_sql-771" > < span class = "linenos" > 771< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-772" > < a href = "#DuckDB.Generator.timestampfromparts_sql-772" > < span class = "linenos" > 772< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > milli< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-773" > < a href = "#DuckDB.Generator.timestampfromparts_sql-773" > < span class = "linenos" > 773< / span > < / a >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-774" > < a href = "#DuckDB.Generator.timestampfromparts_sql-774" > < span class = "linenos" > 774< / span > < / a > < span class = "n" > nano< / 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" > " nano" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-775" > < a href = "#DuckDB.Generator.timestampfromparts_sql-775" > < span class = "linenos" > 775< / span > < / a > < span class = "k" > if< / span > < span class = "n" > nano< / span > < span class = "ow" > is< / span > < span class = "ow" > not< / span > < span class = "kc" > None< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-776" > < a href = "#DuckDB.Generator.timestampfromparts_sql-776" > < span class = "linenos" > 776< / span > < / a > < span class = "n" > sec< / span > < span class = "o" > +=< / span > < span class = "n" > nano< / span > < span class = "o" > .< / span > < span class = "n" > pop< / span > < span class = "p" > ()< / 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 = "mf" > 1000000000.0< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-777" > < a href = "#DuckDB.Generator.timestampfromparts_sql-777" > < span class = "linenos" > 777< / span > < / a >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-778" > < a href = "#DuckDB.Generator.timestampfromparts_sql-778" > < span class = "linenos" > 778< / span > < / a > < span class = "k" > if< / span > < span class = "n" > milli< / span > < span class = "ow" > or< / span > < span class = "n" > nano< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-779" > < a href = "#DuckDB.Generator.timestampfromparts_sql-779" > < span class = "linenos" > 779< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " sec" < / span > < span class = "p" > ,< / span > < span class = "n" > sec< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-780" > < a href = "#DuckDB.Generator.timestampfromparts_sql-780" > < span class = "linenos" > 780< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator.timestampfromparts_sql-781" > < a href = "#DuckDB.Generator.timestampfromparts_sql-781" > < span class = "linenos" > 781< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " MAKE_TIMESTAMP" < / 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:19:14 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.tablesample_sql" class = "classattr" >
< input id = "DuckDB.Generator.tablesample_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 21:52:55 +01:00
< span class = "name" > tablesample_sql< / 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#TableSample" > sqlglot.expressions.TableSample< / a > < / span > ,< / span > < span class = "param" > < span class = "n" > tablesample_keyword< / span > < span class = "p" > :< / span > < span class = "n" > Optional< / span > < span class = "p" > [< / span > < span class = "nb" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
2025-02-13 21:19:14 +01:00
< label class = "view-source-button" for = "DuckDB.Generator.tablesample_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.tablesample_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.tablesample_sql-783" > < a href = "#DuckDB.Generator.tablesample_sql-783" > < span class = "linenos" > 783< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > tablesample_sql< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-784" > < a href = "#DuckDB.Generator.tablesample_sql-784" > < span class = "linenos" > 784< / span > < / a > < span class = "bp" > self< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-785" > < a href = "#DuckDB.Generator.tablesample_sql-785" > < span class = "linenos" > 785< / span > < / a > < span class = "n" > expression< / span > < span class = "p" > :< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableSample< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-786" > < a href = "#DuckDB.Generator.tablesample_sql-786" > < span class = "linenos" > 786< / span > < / a > < span class = "n" > tablesample_keyword< / 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" > str< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span > < span class = "p" > ,< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-787" > < a href = "#DuckDB.Generator.tablesample_sql-787" > < span class = "linenos" > 787< / span > < / a > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-788" > < a href = "#DuckDB.Generator.tablesample_sql-788" > < span class = "linenos" > 788< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / 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" > Select< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-789" > < a href = "#DuckDB.Generator.tablesample_sql-789" > < span class = "linenos" > 789< / span > < / a > < span class = "c1" > # This sample clause only applies to a single source, not the entire resulting relation< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-790" > < a href = "#DuckDB.Generator.tablesample_sql-790" > < span class = "linenos" > 790< / span > < / a > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "s2" > " TABLESAMPLE" < / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-791" > < a href = "#DuckDB.Generator.tablesample_sql-791" > < span class = "linenos" > 791< / span > < / a >
< / span > < span id = "DuckDB.Generator.tablesample_sql-792" > < a href = "#DuckDB.Generator.tablesample_sql-792" > < span class = "linenos" > 792< / 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" > " size" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-793" > < a href = "#DuckDB.Generator.tablesample_sql-793" > < span class = "linenos" > 793< / span > < / a > < span class = "n" > method< / 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" > " method" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-794" > < a href = "#DuckDB.Generator.tablesample_sql-794" > < span class = "linenos" > 794< / span > < / a > < span class = "k" > if< / span > < span class = "n" > method< / span > < span class = "ow" > and< / span > < span class = "n" > method< / 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 = "o" > !=< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-795" > < a href = "#DuckDB.Generator.tablesample_sql-795" > < span class = "linenos" > 795< / span > < / a > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > unsupported< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-796" > < a href = "#DuckDB.Generator.tablesample_sql-796" > < span class = "linenos" > 796< / span > < / a > < span class = "sa" > f< / span > < span class = "s2" > " Sampling method < / span > < span class = "si" > {< / span > < span class = "n" > method< / span > < span class = "si" > }< / span > < span class = "s2" > is not supported with a discrete sample count, " < / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-797" > < a href = "#DuckDB.Generator.tablesample_sql-797" > < span class = "linenos" > 797< / span > < / a > < span class = "s2" > " defaulting to reservoir sampling" < / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-798" > < a href = "#DuckDB.Generator.tablesample_sql-798" > < span class = "linenos" > 798< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-799" > < a href = "#DuckDB.Generator.tablesample_sql-799" > < span class = "linenos" > 799< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " method" < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " RESERVOIR" < / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator.tablesample_sql-800" > < a href = "#DuckDB.Generator.tablesample_sql-800" > < span class = "linenos" > 800< / span > < / a >
< / span > < span id = "DuckDB.Generator.tablesample_sql-801" > < a href = "#DuckDB.Generator.tablesample_sql-801" > < span class = "linenos" > 801< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > tablesample_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > tablesample_keyword< / span > < span class = "o" > =< / span > < span class = "n" > tablesample_keyword< / span > < span class = "p" > )< / span >
2025-02-13 21:19:14 +01:00
< / span > < / pre > < / div >
2025-02-13 20:15:27 +01:00
< / div >
2025-02-13 16:00:51 +01:00
< div id = "DuckDB.Generator.interval_sql" class = "classattr" >
< input id = "DuckDB.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 = "DuckDB.Generator.interval_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.interval_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.interval_sql-803" > < a href = "#DuckDB.Generator.interval_sql-803" > < span class = "linenos" > 803< / 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 = "DuckDB.Generator.interval_sql-804" > < a href = "#DuckDB.Generator.interval_sql-804" > < span class = "linenos" > 804< / span > < / a > < span class = "n" > multiplier< / 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" > int< / span > < span class = "p" > ]< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB.Generator.interval_sql-805" > < a href = "#DuckDB.Generator.interval_sql-805" > < span class = "linenos" > 805< / span > < / a > < span class = "n" > unit< / span > < span class = "o" > =< / 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" > lower< / span > < span class = "p" > ()< / span >
< / span > < span id = "DuckDB.Generator.interval_sql-806" > < a href = "#DuckDB.Generator.interval_sql-806" > < span class = "linenos" > 806< / span > < / a >
< / span > < span id = "DuckDB.Generator.interval_sql-807" > < a href = "#DuckDB.Generator.interval_sql-807" > < span class = "linenos" > 807< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / 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 = "DuckDB.Generator.interval_sql-808" > < a href = "#DuckDB.Generator.interval_sql-808" > < span class = "linenos" > 808< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 7< / span >
< / span > < span id = "DuckDB.Generator.interval_sql-809" > < a href = "#DuckDB.Generator.interval_sql-809" > < span class = "linenos" > 809< / span > < / a > < span class = "k" > if< / span > < span class = "n" > unit< / span > < span class = "o" > .< / span > < span class = "n" > startswith< / span > < span class = "p" > (< / span > < span class = "s2" > " quarter" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.interval_sql-810" > < a href = "#DuckDB.Generator.interval_sql-810" > < span class = "linenos" > 810< / span > < / a > < span class = "n" > multiplier< / span > < span class = "o" > =< / span > < span class = "mi" > 90< / span >
< / span > < span id = "DuckDB.Generator.interval_sql-811" > < a href = "#DuckDB.Generator.interval_sql-811" > < span class = "linenos" > 811< / span > < / a >
< / span > < span id = "DuckDB.Generator.interval_sql-812" > < a href = "#DuckDB.Generator.interval_sql-812" > < span class = "linenos" > 812< / span > < / a > < span class = "k" > if< / span > < span class = "n" > multiplier< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.interval_sql-813" > < a href = "#DuckDB.Generator.interval_sql-813" > < span class = "linenos" > 813< / span > < / a > < span class = "k" > return< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > multiplier< / span > < span class = "si" > }< / span > < span class = "s2" > * < / span > < span class = "si" > {< / 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" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Interval< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "w" > < / span > < span class = "n" > unit< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s1" > ' DAY' < / span > < span class = "p" > )))< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator.interval_sql-814" > < a href = "#DuckDB.Generator.interval_sql-814" > < span class = "linenos" > 814< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator.interval_sql-815" > < a href = "#DuckDB.Generator.interval_sql-815" > < span class = "linenos" > 815< / 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 16:00:51 +01:00
< / span > < / pre > < / div >
< / div >
2025-02-13 21:19:14 +01:00
< div id = "DuckDB.Generator.columndef_sql" class = "classattr" >
< input id = "DuckDB.Generator.columndef_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 15:43:32 +01:00
< div class = "attr function" >
< span class = "def" > def< / span >
2025-02-13 21:19:14 +01:00
< span class = "name" > columndef_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#ColumnDef" > sqlglot.expressions.ColumnDef< / a > < / span > , < / span > < span class = "param" > < span class = "n" > sep< / span > < span class = "p" > :< / span > < span class = "nb" > str< / span > < span class = "o" > =< / span > < span class = "s1" > ' ' < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
2025-02-13 15:43:32 +01:00
2025-02-13 21:19:14 +01:00
< label class = "view-source-button" for = "DuckDB.Generator.columndef_sql-view-source" > < span > View Source< / span > < / label >
2025-02-13 15:43:32 +01:00
< / div >
2025-02-13 21:19:14 +01:00
< a class = "headerlink" href = "#DuckDB.Generator.columndef_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.columndef_sql-817" > < a href = "#DuckDB.Generator.columndef_sql-817" > < span class = "linenos" > 817< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > columndef_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" > ColumnDef< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > :< / span > < span class = "nb" > str< / span > < span class = "o" > =< / span > < span class = "s2" > " " < / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.columndef_sql-818" > < a href = "#DuckDB.Generator.columndef_sql-818" > < span class = "linenos" > 818< / 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" > UserDefinedFunction< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.columndef_sql-819" > < a href = "#DuckDB.Generator.columndef_sql-819" > < span class = "linenos" > 819< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.columndef_sql-820" > < a href = "#DuckDB.Generator.columndef_sql-820" > < span class = "linenos" > 820< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > columndef_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > ,< / span > < span class = "n" > sep< / span > < span class = "p" > )< / span >
2025-02-13 21:29:39 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.join_sql" class = "classattr" >
< input id = "DuckDB.Generator.join_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" > join_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#Join" > sqlglot.expressions.Join< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.join_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.join_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.join_sql-822" > < a href = "#DuckDB.Generator.join_sql-822" > < span class = "linenos" > 822< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > join_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" > Join< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.join_sql-823" > < a href = "#DuckDB.Generator.join_sql-823" > < span class = "linenos" > 823< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.join_sql-824" > < a href = "#DuckDB.Generator.join_sql-824" > < span class = "linenos" > 824< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > side< / span > < span class = "o" > ==< / span > < span class = "s2" > " LEFT" < / span >
< / span > < span id = "DuckDB.Generator.join_sql-825" > < a href = "#DuckDB.Generator.join_sql-825" > < span class = "linenos" > 825< / span > < / a > < span class = "ow" > and< / 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" > " on" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.join_sql-826" > < a href = "#DuckDB.Generator.join_sql-826" > < span class = "linenos" > 826< / span > < / a > < span class = "ow" > and< / span > < span class = "nb" > isinstance< / 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" > Unnest< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.join_sql-827" > < a href = "#DuckDB.Generator.join_sql-827" > < span class = "linenos" > 827< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.join_sql-828" > < a href = "#DuckDB.Generator.join_sql-828" > < span class = "linenos" > 828< / span > < / a > < span class = "c1" > # Some dialects support `LEFT JOIN UNNEST(...)` without an explicit ON clause< / span >
< / span > < span id = "DuckDB.Generator.join_sql-829" > < a href = "#DuckDB.Generator.join_sql-829" > < span class = "linenos" > 829< / span > < / a > < span class = "c1" > # DuckDB doesn' t, but we can just add a dummy ON clause that is always true< / span >
< / span > < span id = "DuckDB.Generator.join_sql-830" > < a href = "#DuckDB.Generator.join_sql-830" > < span class = "linenos" > 830< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > on< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > true< / span > < span class = "p" > ()))< / span >
< / span > < span id = "DuckDB.Generator.join_sql-831" > < a href = "#DuckDB.Generator.join_sql-831" > < span class = "linenos" > 831< / span > < / a >
< / span > < span id = "DuckDB.Generator.join_sql-832" > < a href = "#DuckDB.Generator.join_sql-832" > < span class = "linenos" > 832< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > join_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:19:14 +01:00
< / span > < / pre > < / div >
< / div >
2025-02-13 21:29:39 +01:00
< div id = "DuckDB.Generator.generateseries_sql" class = "classattr" >
< input id = "DuckDB.Generator.generateseries_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
2025-02-13 21:19:14 +01:00
< div class = "attr function" >
< span class = "def" > def< / span >
2025-02-13 21:29:39 +01:00
< span class = "name" > generateseries_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#GenerateSeries" > sqlglot.expressions.GenerateSeries< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
2025-02-13 21:19:14 +01:00
2025-02-13 21:29:39 +01:00
< label class = "view-source-button" for = "DuckDB.Generator.generateseries_sql-view-source" > < span > View Source< / span > < / label >
2025-02-13 21:19:14 +01:00
< / div >
2025-02-13 21:29:39 +01:00
< a class = "headerlink" href = "#DuckDB.Generator.generateseries_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.generateseries_sql-834" > < a href = "#DuckDB.Generator.generateseries_sql-834" > < span class = "linenos" > 834< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > generateseries_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" > GenerateSeries< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.generateseries_sql-835" > < a href = "#DuckDB.Generator.generateseries_sql-835" > < span class = "linenos" > 835< / span > < / a > < span class = "c1" > # GENERATE_SERIES(a, b) -> [a, b], RANGE(a, b) -> [a, b)< / span >
< / span > < span id = "DuckDB.Generator.generateseries_sql-836" > < a href = "#DuckDB.Generator.generateseries_sql-836" > < span class = "linenos" > 836< / 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" > " is_end_exclusive" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.generateseries_sql-837" > < a href = "#DuckDB.Generator.generateseries_sql-837" > < span class = "linenos" > 837< / span > < / a > < span class = "k" > return< / span > < span class = "n" > rename_func< / span > < span class = "p" > (< / span > < span class = "s2" > " RANGE" < / 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 = "DuckDB.Generator.generateseries_sql-838" > < a href = "#DuckDB.Generator.generateseries_sql-838" > < span class = "linenos" > 838< / span > < / a >
< / span > < span id = "DuckDB.Generator.generateseries_sql-839" > < a href = "#DuckDB.Generator.generateseries_sql-839" > < span class = "linenos" > 839< / 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 >
2025-02-13 21:30:28 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.bracket_sql" class = "classattr" >
< input id = "DuckDB.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 = "DuckDB.Generator.bracket_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.bracket_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.bracket_sql-841" > < a href = "#DuckDB.Generator.bracket_sql-841" > < span class = "linenos" > 841< / 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 = "DuckDB.Generator.bracket_sql-842" > < a href = "#DuckDB.Generator.bracket_sql-842" > < span class = "linenos" > 842< / 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 = "DuckDB.Generator.bracket_sql-843" > < a href = "#DuckDB.Generator.bracket_sql-843" > < span class = "linenos" > 843< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Array< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.bracket_sql-844" > < a href = "#DuckDB.Generator.bracket_sql-844" > < span class = "linenos" > 844< / span > < / a > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > replace< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > paren< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator.bracket_sql-845" > < a href = "#DuckDB.Generator.bracket_sql-845" > < span class = "linenos" > 845< / span > < / a >
< / span > < span id = "DuckDB.Generator.bracket_sql-846" > < a href = "#DuckDB.Generator.bracket_sql-846" > < span class = "linenos" > 846< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / 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 = "DuckDB.Generator.bracket_sql-847" > < a href = "#DuckDB.Generator.bracket_sql-847" > < span class = "linenos" > 847< / span > < / a >
< / span > < span id = "DuckDB.Generator.bracket_sql-848" > < a href = "#DuckDB.Generator.bracket_sql-848" > < span class = "linenos" > 848< / 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" > " returns_list_for_maps" < / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.bracket_sql-849" > < a href = "#DuckDB.Generator.bracket_sql-849" > < span class = "linenos" > 849< / 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 = "DuckDB.Generator.bracket_sql-850" > < a href = "#DuckDB.Generator.bracket_sql-850" > < span class = "linenos" > 850< / 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 = "DuckDB.Generator.bracket_sql-851" > < a href = "#DuckDB.Generator.bracket_sql-851" > < span class = "linenos" > 851< / span > < / a >
< / span > < span id = "DuckDB.Generator.bracket_sql-852" > < a href = "#DuckDB.Generator.bracket_sql-852" > < span class = "linenos" > 852< / 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 = "DuckDB.Generator.bracket_sql-853" > < a href = "#DuckDB.Generator.bracket_sql-853" > < span class = "linenos" > 853< / span > < / a >
< / span > < span id = "DuckDB.Generator.bracket_sql-854" > < a href = "#DuckDB.Generator.bracket_sql-854" > < span class = "linenos" > 854< / 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 = "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" > MAP< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.bracket_sql-855" > < a href = "#DuckDB.Generator.bracket_sql-855" > < span class = "linenos" > 855< / span > < / a > < span class = "n" > bracket< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " (< / span > < span class = "si" > {< / span > < span class = "n" > bracket< / span > < span class = "si" > }< / span > < span class = "s2" > )[1]" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator.bracket_sql-856" > < a href = "#DuckDB.Generator.bracket_sql-856" > < span class = "linenos" > 856< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator.bracket_sql-857" > < a href = "#DuckDB.Generator.bracket_sql-857" > < span class = "linenos" > 857< / span > < / a > < span class = "k" > return< / span > < span class = "n" > bracket< / span >
2025-02-13 21:32:41 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.withingroup_sql" class = "classattr" >
< input id = "DuckDB.Generator.withingroup_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" > withingroup_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#WithinGroup" > sqlglot.expressions.WithinGroup< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.withingroup_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.withingroup_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.withingroup_sql-859" > < a href = "#DuckDB.Generator.withingroup_sql-859" > < span class = "linenos" > 859< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > withingroup_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" > WithinGroup< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-860" > < a href = "#DuckDB.Generator.withingroup_sql-860" > < span class = "linenos" > 860< / span > < / a > < span class = "n" > expression_sql< / 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" > " expression" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-861" > < a href = "#DuckDB.Generator.withingroup_sql-861" > < span class = "linenos" > 861< / span > < / a >
< / span > < span id = "DuckDB.Generator.withingroup_sql-862" > < a href = "#DuckDB.Generator.withingroup_sql-862" > < span class = "linenos" > 862< / span > < / a > < span class = "n" > func< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-863" > < a href = "#DuckDB.Generator.withingroup_sql-863" > < span class = "linenos" > 863< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > func< / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > PERCENTILES< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-864" > < a href = "#DuckDB.Generator.withingroup_sql-864" > < span class = "linenos" > 864< / span > < / a > < span class = "c1" > # Make the order key the first arg and slide the fraction to the right< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-865" > < a href = "#DuckDB.Generator.withingroup_sql-865" > < span class = "linenos" > 865< / span > < / a > < span class = "c1" > # https://duckdb.org/docs/sql/aggregates#ordered-set-aggregate-functions< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-866" > < a href = "#DuckDB.Generator.withingroup_sql-866" > < span class = "linenos" > 866< / span > < / a > < span class = "n" > order_col< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > find< / span > < span class = "p" > (< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Ordered< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-867" > < a href = "#DuckDB.Generator.withingroup_sql-867" > < span class = "linenos" > 867< / span > < / a > < span class = "k" > if< / span > < span class = "n" > order_col< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-868" > < a href = "#DuckDB.Generator.withingroup_sql-868" > < span class = "linenos" > 868< / span > < / a > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " expression" < / span > < span class = "p" > ,< / span > < span class = "n" > func< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-869" > < a href = "#DuckDB.Generator.withingroup_sql-869" > < span class = "linenos" > 869< / span > < / a > < span class = "n" > func< / 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" > order_col< / span > < span class = "o" > .< / span > < span class = "n" > this< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-870" > < a href = "#DuckDB.Generator.withingroup_sql-870" > < span class = "linenos" > 870< / span > < / a >
< / span > < span id = "DuckDB.Generator.withingroup_sql-871" > < a href = "#DuckDB.Generator.withingroup_sql-871" > < span class = "linenos" > 871< / 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 class = "o" > .< / span > < span class = "n" > rstrip< / span > < span class = "p" > (< / span > < span class = "s2" > " )" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.withingroup_sql-872" > < a href = "#DuckDB.Generator.withingroup_sql-872" > < span class = "linenos" > 872< / span > < / a >
< / span > < span id = "DuckDB.Generator.withingroup_sql-873" > < a href = "#DuckDB.Generator.withingroup_sql-873" > < span class = "linenos" > 873< / 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" > expression_sql< / span > < span class = "si" > }< / span > < span class = "s2" > )" < / span >
2025-02-13 21:41:14 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.length_sql" class = "classattr" >
< input id = "DuckDB.Generator.length_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" > length_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#Length" > sqlglot.expressions.Length< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.length_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.length_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.length_sql-875" > < a href = "#DuckDB.Generator.length_sql-875" > < span class = "linenos" > 875< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > length_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" > Length< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.length_sql-876" > < a href = "#DuckDB.Generator.length_sql-876" > < span class = "linenos" > 876< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > this< / span >
< / span > < span id = "DuckDB.Generator.length_sql-877" > < a href = "#DuckDB.Generator.length_sql-877" > < span class = "linenos" > 877< / span > < / a >
< / span > < span id = "DuckDB.Generator.length_sql-878" > < a href = "#DuckDB.Generator.length_sql-878" > < span class = "linenos" > 878< / span > < / a > < span class = "c1" > # Dialects like BQ and Snowflake also accept binary values as args, so< / span >
< / span > < span id = "DuckDB.Generator.length_sql-879" > < a href = "#DuckDB.Generator.length_sql-879" > < span class = "linenos" > 879< / span > < / a > < span class = "c1" > # DDB will attempt to infer the type or resort to case/when resolution< / span >
< / span > < span id = "DuckDB.Generator.length_sql-880" > < a href = "#DuckDB.Generator.length_sql-880" > < span class = "linenos" > 880< / 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" > " binary" < / span > < span class = "p" > )< / span > < span class = "ow" > or< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > is_string< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.length_sql-881" > < a href = "#DuckDB.Generator.length_sql-881" > < span class = "linenos" > 881< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.length_sql-882" > < a href = "#DuckDB.Generator.length_sql-882" > < span class = "linenos" > 882< / span > < / a >
< / span > < span id = "DuckDB.Generator.length_sql-883" > < a href = "#DuckDB.Generator.length_sql-883" > < span class = "linenos" > 883< / span > < / a > < span class = "k" > if< / span > < span class = "ow" > not< / span > < span class = "n" > arg< / span > < span class = "o" > .< / span > < span class = "n" > type< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.length_sql-884" > < a href = "#DuckDB.Generator.length_sql-884" > < span class = "linenos" > 884< / 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 >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator.length_sql-885" > < a href = "#DuckDB.Generator.length_sql-885" > < span class = "linenos" > 885< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator.length_sql-886" > < a href = "#DuckDB.Generator.length_sql-886" > < span class = "linenos" > 886< / span > < / a > < span class = "n" > arg< / span > < span class = "o" > =< / span > < span class = "n" > annotate_types< / span > < span class = "p" > (< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.length_sql-887" > < a href = "#DuckDB.Generator.length_sql-887" > < span class = "linenos" > 887< / span > < / a >
< / span > < span id = "DuckDB.Generator.length_sql-888" > < a href = "#DuckDB.Generator.length_sql-888" > < span class = "linenos" > 888< / span > < / a > < span class = "k" > if< / span > < span class = "n" > arg< / 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 = "DuckDB.Generator.length_sql-889" > < a href = "#DuckDB.Generator.length_sql-889" > < span class = "linenos" > 889< / 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" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > )< / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator.length_sql-890" > < a href = "#DuckDB.Generator.length_sql-890" > < span class = "linenos" > 890< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator.length_sql-891" > < a href = "#DuckDB.Generator.length_sql-891" > < span class = "linenos" > 891< / span > < / a > < span class = "c1" > # We need these casts to make duckdb' s static type checker happy< / span >
< / span > < span id = "DuckDB.Generator.length_sql-892" > < a href = "#DuckDB.Generator.length_sql-892" > < span class = "linenos" > 892< / span > < / a > < span class = "n" > blob< / 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" > arg< / 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" > VARBINARY< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.length_sql-893" > < a href = "#DuckDB.Generator.length_sql-893" > < span class = "linenos" > 893< / span > < / a > < span class = "n" > varchar< / 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" > arg< / 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" > VARCHAR< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.length_sql-894" > < a href = "#DuckDB.Generator.length_sql-894" > < span class = "linenos" > 894< / span > < / a >
< / span > < span id = "DuckDB.Generator.length_sql-895" > < a href = "#DuckDB.Generator.length_sql-895" > < span class = "linenos" > 895< / span > < / a > < span class = "n" > case< / span > < span class = "o" > =< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.length_sql-896" > < a href = "#DuckDB.Generator.length_sql-896" > < span class = "linenos" > 896< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > case< / 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" > " TYPEOF" < / span > < span class = "p" > ,< / span > < span class = "n" > arg< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator.length_sql-897" > < a href = "#DuckDB.Generator.length_sql-897" > < span class = "linenos" > 897< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.length_sql-898" > < a href = "#DuckDB.Generator.length_sql-898" > < span class = "linenos" > 898< / span > < / a > < span class = "s2" > " ' VARCHAR' " < / span > < span class = "p" > ,< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Anonymous< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "s2" > " LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > varchar< / span > < span class = "p" > ])< / span >
< / span > < span id = "DuckDB.Generator.length_sql-899" > < a href = "#DuckDB.Generator.length_sql-899" > < span class = "linenos" > 899< / span > < / a > < span class = "p" > )< / span > < span class = "c1" > # anonymous to break length_sql recursion< / span >
< / span > < span id = "DuckDB.Generator.length_sql-900" > < a href = "#DuckDB.Generator.length_sql-900" > < span class = "linenos" > 900< / span > < / a > < span class = "o" > .< / span > < span class = "n" > when< / span > < span class = "p" > (< / span > < span class = "s2" > " ' BLOB' " < / 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" > " OCTET_LENGTH" < / span > < span class = "p" > ,< / span > < span class = "n" > blob< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator.length_sql-901" > < a href = "#DuckDB.Generator.length_sql-901" > < span class = "linenos" > 901< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.length_sql-902" > < a href = "#DuckDB.Generator.length_sql-902" > < span class = "linenos" > 902< / span > < / a >
< / span > < span id = "DuckDB.Generator.length_sql-903" > < a href = "#DuckDB.Generator.length_sql-903" > < span class = "linenos" > 903< / 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" > case< / span > < span class = "p" > )< / span >
2025-02-13 21:51:42 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.objectinsert_sql" class = "classattr" >
< input id = "DuckDB.Generator.objectinsert_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" > objectinsert_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#ObjectInsert" > sqlglot.expressions.ObjectInsert< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.objectinsert_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.objectinsert_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.objectinsert_sql-905" > < a href = "#DuckDB.Generator.objectinsert_sql-905" > < span class = "linenos" > 905< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > objectinsert_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" > ObjectInsert< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-906" > < a href = "#DuckDB.Generator.objectinsert_sql-906" > < span class = "linenos" > 906< / 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 = "DuckDB.Generator.objectinsert_sql-907" > < a href = "#DuckDB.Generator.objectinsert_sql-907" > < span class = "linenos" > 907< / span > < / a > < span class = "n" > key< / 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" > " key" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-908" > < a href = "#DuckDB.Generator.objectinsert_sql-908" > < span class = "linenos" > 908< / span > < / a > < span class = "n" > key_sql< / span > < span class = "o" > =< / span > < span class = "n" > key< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "k" > if< / span > < span class = "nb" > isinstance< / span > < span class = "p" > (< / span > < span class = "n" > key< / 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 = "k" > else< / span > < span class = "s2" > " " < / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-909" > < a href = "#DuckDB.Generator.objectinsert_sql-909" > < span class = "linenos" > 909< / span > < / a > < span class = "n" > value_sql< / 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" > " value" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-910" > < a href = "#DuckDB.Generator.objectinsert_sql-910" > < span class = "linenos" > 910< / span > < / a >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-911" > < a href = "#DuckDB.Generator.objectinsert_sql-911" > < span class = "linenos" > 911< / span > < / a > < span class = "n" > kv_sql< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " < / span > < span class = "si" > {< / span > < span class = "n" > key_sql< / span > < span class = "si" > }< / span > < span class = "s2" > := < / span > < span class = "si" > {< / span > < span class = "n" > value_sql< / span > < span class = "si" > }< / span > < span class = "s2" > " < / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-912" > < a href = "#DuckDB.Generator.objectinsert_sql-912" > < span class = "linenos" > 912< / span > < / a >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-913" > < a href = "#DuckDB.Generator.objectinsert_sql-913" > < span class = "linenos" > 913< / span > < / a > < span class = "c1" > # If the input struct is empty e.g. transpiling OBJECT_INSERT(OBJECT_CONSTRUCT(), key, value) from Snowflake< / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-914" > < a href = "#DuckDB.Generator.objectinsert_sql-914" > < span class = "linenos" > 914< / span > < / a > < span class = "c1" > # then we can generate STRUCT_PACK which will build it since STRUCT_INSERT({}, key := value) is not valid DuckDB< / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-915" > < a href = "#DuckDB.Generator.objectinsert_sql-915" > < span class = "linenos" > 915< / span > < / a > < span class = "k" > if< / span > < span class = "nb" > isinstance< / 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" > Struct< / span > < span class = "p" > )< / span > < span class = "ow" > and< / span > < span class = "ow" > not< / span > < span class = "n" > this< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-916" > < a href = "#DuckDB.Generator.objectinsert_sql-916" > < span class = "linenos" > 916< / 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" > " STRUCT_PACK" < / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-917" > < a href = "#DuckDB.Generator.objectinsert_sql-917" > < span class = "linenos" > 917< / span > < / a >
< / span > < span id = "DuckDB.Generator.objectinsert_sql-918" > < a href = "#DuckDB.Generator.objectinsert_sql-918" > < span class = "linenos" > 918< / 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" > " STRUCT_INSERT" < / span > < span class = "p" > ,< / span > < span class = "n" > this< / span > < span class = "p" > ,< / span > < span class = "n" > kv_sql< / span > < span class = "p" > )< / span >
2025-02-13 21:52:32 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.unnest_sql" class = "classattr" >
< input id = "DuckDB.Generator.unnest_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" > unnest_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#Unnest" > sqlglot.expressions.Unnest< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.unnest_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.unnest_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.unnest_sql-920" > < a href = "#DuckDB.Generator.unnest_sql-920" > < span class = "linenos" > 920< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > unnest_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" > Unnest< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-921" > < a href = "#DuckDB.Generator.unnest_sql-921" > < span class = "linenos" > 921< / span > < / a > < span class = "n" > explode_array< / 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" > " explode_array" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-922" > < a href = "#DuckDB.Generator.unnest_sql-922" > < span class = "linenos" > 922< / span > < / a > < span class = "k" > if< / span > < span class = "n" > explode_array< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-923" > < a href = "#DuckDB.Generator.unnest_sql-923" > < span class = "linenos" > 923< / span > < / a > < span class = "c1" > # In BigQuery, UNNESTing a nested array leads to explosion of the top-level array & struct< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-924" > < a href = "#DuckDB.Generator.unnest_sql-924" > < span class = "linenos" > 924< / span > < / a > < span class = "c1" > # This is transpiled to DDB by transforming " FROM UNNEST(...)" to " FROM (SELECT UNNEST(..., max_depth => 2))" < / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-925" > < a href = "#DuckDB.Generator.unnest_sql-925" > < span class = "linenos" > 925< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > expressions< / span > < span class = "o" > .< / span > < span class = "n" > append< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-926" > < a href = "#DuckDB.Generator.unnest_sql-926" > < span class = "linenos" > 926< / span > < / a > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Kwarg< / span > < span class = "p" > (< / span > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > var< / span > < span class = "p" > (< / span > < span class = "s2" > " max_depth" < / span > < span class = "p" > ),< / span > < span class = "n" > expression< / 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" > 2< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-927" > < a href = "#DuckDB.Generator.unnest_sql-927" > < span class = "linenos" > 927< / span > < / a > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-928" > < a href = "#DuckDB.Generator.unnest_sql-928" > < span class = "linenos" > 928< / span > < / a >
< / span > < span id = "DuckDB.Generator.unnest_sql-929" > < a href = "#DuckDB.Generator.unnest_sql-929" > < span class = "linenos" > 929< / span > < / a > < span class = "c1" > # If BQ' s UNNEST is aliased, we transform it from a column alias to a table alias in DDB< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-930" > < a href = "#DuckDB.Generator.unnest_sql-930" > < span class = "linenos" > 930< / span > < / a > < span class = "n" > alias< / 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" > " alias" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-931" > < a href = "#DuckDB.Generator.unnest_sql-931" > < span class = "linenos" > 931< / span > < / a > < span class = "k" > if< / span > < span class = "n" > alias< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-932" > < a href = "#DuckDB.Generator.unnest_sql-932" > < span class = "linenos" > 932< / span > < / a > < span class = "n" > expression< / span > < span class = "o" > .< / span > < span class = "n" > set< / span > < span class = "p" > (< / span > < span class = "s2" > " alias" < / span > < span class = "p" > ,< / span > < span class = "kc" > None< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-933" > < a href = "#DuckDB.Generator.unnest_sql-933" > < span class = "linenos" > 933< / span > < / a > < span class = "n" > alias< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > TableAlias< / 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" > alias< / 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" > " columns" < / span > < span class = "p" > ),< / span > < span class = "mi" > 0< / span > < span class = "p" > ))< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-934" > < a href = "#DuckDB.Generator.unnest_sql-934" > < span class = "linenos" > 934< / span > < / a >
< / span > < span id = "DuckDB.Generator.unnest_sql-935" > < a href = "#DuckDB.Generator.unnest_sql-935" > < span class = "linenos" > 935< / span > < / a > < span class = "n" > unnest_sql< / span > < span class = "o" > =< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-936" > < a href = "#DuckDB.Generator.unnest_sql-936" > < span class = "linenos" > 936< / span > < / a > < span class = "n" > select< / span > < span class = "o" > =< / span > < span class = "n" > exp< / span > < span class = "o" > .< / span > < span class = "n" > Select< / span > < span class = "p" > (< / span > < span class = "n" > expressions< / span > < span class = "o" > =< / span > < span class = "p" > [< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > ])< / span > < span class = "o" > .< / span > < span class = "n" > subquery< / span > < span class = "p" > (< / span > < span class = "n" > alias< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-937" > < a href = "#DuckDB.Generator.unnest_sql-937" > < span class = "linenos" > 937< / 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" > select< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.unnest_sql-938" > < a href = "#DuckDB.Generator.unnest_sql-938" > < span class = "linenos" > 938< / span > < / a >
< / span > < span id = "DuckDB.Generator.unnest_sql-939" > < a href = "#DuckDB.Generator.unnest_sql-939" > < span class = "linenos" > 939< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > unnest_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
2025-02-13 21:54:13 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.ignorenulls_sql" class = "classattr" >
< input id = "DuckDB.Generator.ignorenulls_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" > ignorenulls_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#IgnoreNulls" > sqlglot.expressions.IgnoreNulls< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.ignorenulls_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.ignorenulls_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.ignorenulls_sql-941" > < a href = "#DuckDB.Generator.ignorenulls_sql-941" > < span class = "linenos" > 941< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > ignorenulls_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" > IgnoreNulls< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.ignorenulls_sql-942" > < a href = "#DuckDB.Generator.ignorenulls_sql-942" > < span class = "linenos" > 942< / 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" > this< / span > < span class = "p" > ,< / span > < span class = "n" > WINDOW_FUNCS_WITH_IGNORE_NULLS< / span > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.ignorenulls_sql-943" > < a href = "#DuckDB.Generator.ignorenulls_sql-943" > < span class = "linenos" > 943< / span > < / a > < span class = "c1" > # DuckDB should render IGNORE NULLS only for the general-purpose< / span >
< / span > < span id = "DuckDB.Generator.ignorenulls_sql-944" > < a href = "#DuckDB.Generator.ignorenulls_sql-944" > < span class = "linenos" > 944< / span > < / a > < span class = "c1" > # window functions that accept it e.g. FIRST_VALUE(... IGNORE NULLS) OVER (...)< / span >
< / span > < span id = "DuckDB.Generator.ignorenulls_sql-945" > < a href = "#DuckDB.Generator.ignorenulls_sql-945" > < span class = "linenos" > 945< / span > < / a > < span class = "k" > return< / span > < span class = "nb" > super< / span > < span class = "p" > ()< / span > < span class = "o" > .< / span > < span class = "n" > ignorenulls_sql< / span > < span class = "p" > (< / span > < span class = "n" > expression< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.ignorenulls_sql-946" > < a href = "#DuckDB.Generator.ignorenulls_sql-946" > < span class = "linenos" > 946< / span > < / a >
< / span > < span id = "DuckDB.Generator.ignorenulls_sql-947" > < a href = "#DuckDB.Generator.ignorenulls_sql-947" > < span class = "linenos" > 947< / 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" > expression< / span > < span class = "p" > ,< / span > < span class = "s2" > " this" < / span > < span class = "p" > )< / span >
2025-02-13 21:54:13 +01:00
< / span > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.arraytostring_sql" class = "classattr" >
< input id = "DuckDB.Generator.arraytostring_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" > arraytostring_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#ArrayToString" > sqlglot.expressions.ArrayToString< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.arraytostring_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.arraytostring_sql" > < / a >
2025-02-13 21:56:38 +01:00
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.arraytostring_sql-949" > < a href = "#DuckDB.Generator.arraytostring_sql-949" > < span class = "linenos" > 949< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > arraytostring_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" > ArrayToString< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.arraytostring_sql-950" > < a href = "#DuckDB.Generator.arraytostring_sql-950" > < span class = "linenos" > 950< / 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 = "DuckDB.Generator.arraytostring_sql-951" > < a href = "#DuckDB.Generator.arraytostring_sql-951" > < span class = "linenos" > 951< / span > < / a > < span class = "n" > null_text< / 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" > " null" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.arraytostring_sql-952" > < a href = "#DuckDB.Generator.arraytostring_sql-952" > < span class = "linenos" > 952< / span > < / a >
< / span > < span id = "DuckDB.Generator.arraytostring_sql-953" > < a href = "#DuckDB.Generator.arraytostring_sql-953" > < span class = "linenos" > 953< / span > < / a > < span class = "k" > if< / span > < span class = "n" > null_text< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.arraytostring_sql-954" > < a href = "#DuckDB.Generator.arraytostring_sql-954" > < span class = "linenos" > 954< / span > < / a > < span class = "n" > this< / span > < span class = "o" > =< / span > < span class = "sa" > f< / span > < span class = "s2" > " LIST_TRANSFORM(< / span > < span class = "si" > {< / span > < span class = "n" > this< / span > < span class = "si" > }< / span > < span class = "s2" > , x -> COALESCE(x, < / span > < span class = "si" > {< / span > < span class = "n" > null_text< / span > < span class = "si" > }< / span > < span class = "s2" > ))" < / span >
2025-02-13 21:56:19 +01:00
< / span > < span id = "DuckDB.Generator.arraytostring_sql-955" > < a href = "#DuckDB.Generator.arraytostring_sql-955" > < span class = "linenos" > 955< / span > < / a >
2025-02-13 21:56:38 +01:00
< / span > < span id = "DuckDB.Generator.arraytostring_sql-956" > < a href = "#DuckDB.Generator.arraytostring_sql-956" > < span class = "linenos" > 956< / 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_TO_STRING" < / span > < span class = "p" > ,< / 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 > < / pre > < / div >
< / div >
< div id = "DuckDB.Generator.regexpextract_sql" class = "classattr" >
< input id = "DuckDB.Generator.regexpextract_sql-view-source" class = "view-source-toggle-state" type = "checkbox" aria-hidden = "true" tabindex = "-1" >
< div class = "attr function" >
< div class = "decorator decorator-unsupported_args" > @unsupported_args(' position' , ' occurrence' )< / div >
< span class = "def" > def< / span >
< span class = "name" > regexpextract_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#RegexpExtract" > sqlglot.expressions.RegexpExtract< / a > < / span > < / span > < span class = "return-annotation" > ) -> < span class = "nb" > str< / span > :< / span > < / span >
< label class = "view-source-button" for = "DuckDB.Generator.regexpextract_sql-view-source" > < span > View Source< / span > < / label >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.regexpextract_sql" > < / a >
< div class = "pdoc-code codehilite" > < pre > < span > < / span > < span id = "DuckDB.Generator.regexpextract_sql-958" > < a href = "#DuckDB.Generator.regexpextract_sql-958" > < span class = "linenos" > 958< / span > < / a > < span class = "nd" > @unsupported_args< / span > < span class = "p" > (< / span > < span class = "s2" > " position" < / span > < span class = "p" > ,< / span > < span class = "s2" > " occurrence" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-959" > < a href = "#DuckDB.Generator.regexpextract_sql-959" > < span class = "linenos" > 959< / span > < / a > < span class = "k" > def< / span > < span class = "nf" > regexpextract_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" > RegexpExtract< / span > < span class = "p" > )< / span > < span class = "o" > -> < / span > < span class = "nb" > str< / span > < span class = "p" > :< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-960" > < a href = "#DuckDB.Generator.regexpextract_sql-960" > < span class = "linenos" > 960< / span > < / a > < span class = "n" > group< / 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" > " group" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-961" > < a href = "#DuckDB.Generator.regexpextract_sql-961" > < span class = "linenos" > 961< / span > < / a > < span class = "n" > params< / 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" > " parameters" < / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-962" > < a href = "#DuckDB.Generator.regexpextract_sql-962" > < span class = "linenos" > 962< / span > < / a >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-963" > < a href = "#DuckDB.Generator.regexpextract_sql-963" > < span class = "linenos" > 963< / span > < / a > < span class = "c1" > # Do not render group if there is no following argument,< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-964" > < a href = "#DuckDB.Generator.regexpextract_sql-964" > < span class = "linenos" > 964< / span > < / a > < span class = "c1" > # and it' s the default value for this dialect< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-965" > < a href = "#DuckDB.Generator.regexpextract_sql-965" > < span class = "linenos" > 965< / span > < / a > < span class = "k" > if< / span > < span class = "p" > (< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-966" > < a href = "#DuckDB.Generator.regexpextract_sql-966" > < span class = "linenos" > 966< / span > < / a > < span class = "ow" > not< / span > < span class = "n" > params< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-967" > < a href = "#DuckDB.Generator.regexpextract_sql-967" > < span class = "linenos" > 967< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-968" > < a href = "#DuckDB.Generator.regexpextract_sql-968" > < span class = "linenos" > 968< / span > < / a > < span class = "ow" > and< / span > < span class = "n" > group< / span > < span class = "o" > .< / span > < span class = "n" > name< / span > < span class = "o" > ==< / span > < span class = "nb" > str< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > dialect< / span > < span class = "o" > .< / span > < span class = "n" > REGEXP_EXTRACT_DEFAULT_GROUP< / span > < span class = "p" > )< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-969" > < a href = "#DuckDB.Generator.regexpextract_sql-969" > < span class = "linenos" > 969< / span > < / a > < span class = "p" > ):< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-970" > < a href = "#DuckDB.Generator.regexpextract_sql-970" > < span class = "linenos" > 970< / span > < / a > < span class = "n" > group< / span > < span class = "o" > =< / span > < span class = "kc" > None< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-971" > < a href = "#DuckDB.Generator.regexpextract_sql-971" > < span class = "linenos" > 971< / 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 = "DuckDB.Generator.regexpextract_sql-972" > < a href = "#DuckDB.Generator.regexpextract_sql-972" > < span class = "linenos" > 972< / span > < / a > < span class = "s2" > " REGEXP_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 = "n" > group< / span > < span class = "p" > ,< / span > < span class = "n" > params< / span >
< / span > < span id = "DuckDB.Generator.regexpextract_sql-973" > < a href = "#DuckDB.Generator.regexpextract_sql-973" > < span class = "linenos" > 973< / span > < / a > < span class = "p" > )< / span >
2025-02-13 15:43:32 +01:00
< / span > < / pre > < / div >
2025-02-13 20:15:27 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.SELECT_KINDS" > < / a >
2025-02-13 21:33:25 +01:00
< / div >
< div id = "DuckDB.Generator.TRY_SUPPORTED" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > TRY_SUPPORTED< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.TRY_SUPPORTED" > < / a >
2025-02-13 21:41:14 +01:00
< / div >
< div id = "DuckDB.Generator.SUPPORTS_UESCAPE" class = "classattr" >
< div class = "attr variable" >
< span class = "name" > SUPPORTS_UESCAPE< / span > =
< span class = "default_value" > False< / span >
< / div >
< a class = "headerlink" href = "#DuckDB.Generator.SUPPORTS_UESCAPE" > < / a >
2025-02-13 21:30:28 +01:00
< / div >
< div id = "DuckDB.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 = "#DuckDB.Generator.AFTER_HAVING_MODIFIER_TRANSFORMS" > < / a >
2025-02-13 15:43:32 +01:00
< / div >
2025-02-13 15:23:26 +01:00
< div class = "inherited" >
< h5 > Inherited Members< / h5 >
< dl >
< div > < dt > < a href = "../generator.html#Generator" > sqlglot.generator.Generator< / a > < / dt >
< dd id = "DuckDB.Generator.__init__" class = "function" > < a href = "../generator.html#Generator.__init__" > Generator< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Generator.NULL_ORDERING_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.NULL_ORDERING_SUPPORTED" > NULL_ORDERING_SUPPORTED< / a > < / dd >
< dd id = "DuckDB.Generator.LOCKING_READS_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.LOCKING_READS_SUPPORTED" > LOCKING_READS_SUPPORTED< / a > < / dd >
2025-02-13 21:54:13 +01:00
< dd id = "DuckDB.Generator.EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE" class = "variable" > < a href = "../generator.html#Generator.EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE" > EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Generator.WRAP_DERIVED_VALUES" class = "variable" > < a href = "../generator.html#Generator.WRAP_DERIVED_VALUES" > WRAP_DERIVED_VALUES< / a > < / dd >
< dd id = "DuckDB.Generator.CREATE_FUNCTION_RETURN_AS" class = "variable" > < a href = "../generator.html#Generator.CREATE_FUNCTION_RETURN_AS" > CREATE_FUNCTION_RETURN_AS< / a > < / dd >
< dd id = "DuckDB.Generator.MATCHED_BY_SOURCE" class = "variable" > < a href = "../generator.html#Generator.MATCHED_BY_SOURCE" > MATCHED_BY_SOURCE< / a > < / dd >
< dd id = "DuckDB.Generator.SINGLE_STRING_INTERVAL" class = "variable" > < a href = "../generator.html#Generator.SINGLE_STRING_INTERVAL" > SINGLE_STRING_INTERVAL< / a > < / dd >
< dd id = "DuckDB.Generator.INTERVAL_ALLOWS_PLURAL_FORM" class = "variable" > < a href = "../generator.html#Generator.INTERVAL_ALLOWS_PLURAL_FORM" > INTERVAL_ALLOWS_PLURAL_FORM< / a > < / dd >
2025-02-13 21:09:41 +01:00
< dd id = "DuckDB.Generator.LIMIT_ONLY_LITERALS" class = "variable" > < a href = "../generator.html#Generator.LIMIT_ONLY_LITERALS" > LIMIT_ONLY_LITERALS< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Generator.GROUPINGS_SEP" class = "variable" > < a href = "../generator.html#Generator.GROUPINGS_SEP" > GROUPINGS_SEP< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.QUERY_HINT_SEP" class = "variable" > < a href = "../generator.html#Generator.QUERY_HINT_SEP" > QUERY_HINT_SEP< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Generator.IS_BOOL_ALLOWED" class = "variable" > < a href = "../generator.html#Generator.IS_BOOL_ALLOWED" > IS_BOOL_ALLOWED< / a > < / dd >
2025-02-13 20:43:05 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.EXTRACT_ALLOWS_QUOTES" class = "variable" > < a href = "../generator.html#Generator.EXTRACT_ALLOWS_QUOTES" > EXTRACT_ALLOWS_QUOTES< / a > < / dd >
2025-02-13 20:58:22 +01:00
< dd id = "DuckDB.Generator.TZ_TO_WITH_TIME_ZONE" class = "variable" > < a href = "../generator.html#Generator.TZ_TO_WITH_TIME_ZONE" > TZ_TO_WITH_TIME_ZONE< / a > < / dd >
2025-02-13 20:48:36 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.UNNEST_WITH_ORDINALITY" class = "variable" > < a href = "../generator.html#Generator.UNNEST_WITH_ORDINALITY" > UNNEST_WITH_ORDINALITY< / a > < / dd >
< dd id = "DuckDB.Generator.AGGREGATE_FILTER_SUPPORTED" class = "variable" > < a href = "../generator.html#Generator.AGGREGATE_FILTER_SUPPORTED" > AGGREGATE_FILTER_SUPPORTED< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "DuckDB.Generator.COMPUTED_COLUMN_WITH_TYPE" class = "variable" > < a href = "../generator.html#Generator.COMPUTED_COLUMN_WITH_TYPE" > COMPUTED_COLUMN_WITH_TYPE< / a > < / dd >
< dd id = "DuckDB.Generator.SUPPORTS_TABLE_COPY" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_TABLE_COPY" > SUPPORTS_TABLE_COPY< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.TABLESAMPLE_SIZE_IS_ROWS" class = "variable" > < a href = "../generator.html#Generator.TABLESAMPLE_SIZE_IS_ROWS" > TABLESAMPLE_SIZE_IS_ROWS< / a > < / dd >
< dd id = "DuckDB.Generator.TABLESAMPLE_WITH_METHOD" class = "variable" > < a href = "../generator.html#Generator.TABLESAMPLE_WITH_METHOD" > TABLESAMPLE_WITH_METHOD< / a > < / dd >
2025-02-13 21:04:58 +01:00
< dd id = "DuckDB.Generator.COLLATE_IS_FUNC" class = "variable" > < a href = "../generator.html#Generator.COLLATE_IS_FUNC" > COLLATE_IS_FUNC< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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:17:51 +01:00
< dd id = "DuckDB.Generator.SUPPORTS_SINGLE_ARG_CONCAT" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_SINGLE_ARG_CONCAT" > SUPPORTS_SINGLE_ARG_CONCAT< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "DuckDB.Generator.SUPPORTS_TABLE_ALIAS_COLUMNS" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_TABLE_ALIAS_COLUMNS" > SUPPORTS_TABLE_ALIAS_COLUMNS< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.INSERT_OVERWRITE" class = "variable" > < a href = "../generator.html#Generator.INSERT_OVERWRITE" > INSERT_OVERWRITE< / a > < / dd >
< dd id = "DuckDB.Generator.SUPPORTS_SELECT_INTO" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_SELECT_INTO" > SUPPORTS_SELECT_INTO< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.LIKE_PROPERTY_INSIDE_SCHEMA" class = "variable" > < a href = "../generator.html#Generator.LIKE_PROPERTY_INSIDE_SCHEMA" > LIKE_PROPERTY_INSIDE_SCHEMA< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 >
2025-02-13 21:41:14 +01:00
< dd id = "DuckDB.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 = "DuckDB.Generator.COPY_PARAMS_ARE_WRAPPED" class = "variable" > < a href = "../generator.html#Generator.COPY_PARAMS_ARE_WRAPPED" > COPY_PARAMS_ARE_WRAPPED< / a > < / dd >
< dd id = "DuckDB.Generator.COPY_PARAMS_EQ_REQUIRED" class = "variable" > < a href = "../generator.html#Generator.COPY_PARAMS_EQ_REQUIRED" > COPY_PARAMS_EQ_REQUIRED< / a > < / dd >
2025-02-13 21:35:32 +01:00
< dd id = "DuckDB.Generator.HEX_FUNC" class = "variable" > < a href = "../generator.html#Generator.HEX_FUNC" > HEX_FUNC< / a > < / dd >
2025-02-13 21:36:08 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.SUPPORTS_EXPLODING_PROJECTIONS" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_EXPLODING_PROJECTIONS" > SUPPORTS_EXPLODING_PROJECTIONS< / a > < / dd >
< dd id = "DuckDB.Generator.SUPPORTS_CONVERT_TIMEZONE" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_CONVERT_TIMEZONE" > SUPPORTS_CONVERT_TIMEZONE< / a > < / dd >
2025-02-13 21:56:38 +01:00
< dd id = "DuckDB.Generator.SUPPORTS_MEDIAN" class = "variable" > < a href = "../generator.html#Generator.SUPPORTS_MEDIAN" > SUPPORTS_MEDIAN< / a > < / dd >
2025-02-13 21:41:14 +01:00
< dd id = "DuckDB.Generator.PARSE_JSON_NAME" class = "variable" > < a href = "../generator.html#Generator.PARSE_JSON_NAME" > PARSE_JSON_NAME< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Generator.TIME_PART_SINGULARS" class = "variable" > < a href = "../generator.html#Generator.TIME_PART_SINGULARS" > TIME_PART_SINGULARS< / a > < / dd >
< dd id = "DuckDB.Generator.TOKEN_MAPPING" class = "variable" > < a href = "../generator.html#Generator.TOKEN_MAPPING" > TOKEN_MAPPING< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.EXCLUDE_COMMENTS" class = "variable" > < a href = "../generator.html#Generator.EXCLUDE_COMMENTS" > EXCLUDE_COMMENTS< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.SENTINEL_LINE_BREAK" class = "variable" > < a href = "../generator.html#Generator.SENTINEL_LINE_BREAK" > SENTINEL_LINE_BREAK< / a > < / dd >
< dd id = "DuckDB.Generator.pretty" class = "variable" > < a href = "../generator.html#Generator.pretty" > pretty< / a > < / dd >
< dd id = "DuckDB.Generator.identify" class = "variable" > < a href = "../generator.html#Generator.identify" > identify< / a > < / dd >
< dd id = "DuckDB.Generator.normalize" class = "variable" > < a href = "../generator.html#Generator.normalize" > normalize< / a > < / dd >
< dd id = "DuckDB.Generator.pad" class = "variable" > < a href = "../generator.html#Generator.pad" > pad< / a > < / dd >
< dd id = "DuckDB.Generator.unsupported_level" class = "variable" > < a href = "../generator.html#Generator.unsupported_level" > unsupported_level< / a > < / dd >
< dd id = "DuckDB.Generator.max_unsupported" class = "variable" > < a href = "../generator.html#Generator.max_unsupported" > max_unsupported< / a > < / dd >
< dd id = "DuckDB.Generator.leading_comma" class = "variable" > < a href = "../generator.html#Generator.leading_comma" > leading_comma< / a > < / dd >
< dd id = "DuckDB.Generator.max_text_width" class = "variable" > < a href = "../generator.html#Generator.max_text_width" > max_text_width< / a > < / dd >
< dd id = "DuckDB.Generator.comments" class = "variable" > < a href = "../generator.html#Generator.comments" > comments< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "DuckDB.Generator.dialect" class = "variable" > < a href = "../generator.html#Generator.dialect" > dialect< / a > < / dd >
2025-02-13 20:15:27 +01:00
< dd id = "DuckDB.Generator.normalize_functions" class = "variable" > < a href = "../generator.html#Generator.normalize_functions" > normalize_functions< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.generate" class = "function" > < a href = "../generator.html#Generator.generate" > generate< / a > < / dd >
2025-02-13 21:17:09 +01:00
< dd id = "DuckDB.Generator.preprocess" class = "function" > < a href = "../generator.html#Generator.preprocess" > preprocess< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "DuckDB.Generator.unsupported" class = "function" > < a href = "../generator.html#Generator.unsupported" > unsupported< / a > < / dd >
< dd id = "DuckDB.Generator.sep" class = "function" > < a href = "../generator.html#Generator.sep" > sep< / a > < / dd >
< dd id = "DuckDB.Generator.seg" class = "function" > < a href = "../generator.html#Generator.seg" > seg< / a > < / dd >
< dd id = "DuckDB.Generator.pad_comment" class = "function" > < a href = "../generator.html#Generator.pad_comment" > pad_comment< / a > < / dd >
< dd id = "DuckDB.Generator.maybe_comment" class = "function" > < a href = "../generator.html#Generator.maybe_comment" > maybe_comment< / a > < / dd >
< dd id = "DuckDB.Generator.wrap" class = "function" > < a href = "../generator.html#Generator.wrap" > wrap< / a > < / dd >
< dd id = "DuckDB.Generator.no_identify" class = "function" > < a href = "../generator.html#Generator.no_identify" > no_identify< / a > < / dd >
< dd id = "DuckDB.Generator.normalize_func" class = "function" > < a href = "../generator.html#Generator.normalize_func" > normalize_func< / a > < / dd >
< dd id = "DuckDB.Generator.indent" class = "function" > < a href = "../generator.html#Generator.indent" > indent< / a > < / dd >
< dd id = "DuckDB.Generator.sql" class = "function" > < a href = "../generator.html#Generator.sql" > sql< / a > < / dd >
< dd id = "DuckDB.Generator.uncache_sql" class = "function" > < a href = "../generator.html#Generator.uncache_sql" > uncache_sql< / a > < / dd >
< dd id = "DuckDB.Generator.cache_sql" class = "function" > < a href = "../generator.html#Generator.cache_sql" > cache_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.generatedasrowcolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.generatedasrowcolumnconstraint_sql" > generatedasrowcolumnconstraint_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.primarykeycolumnconstraint_sql" class = "function" > < a href = "../generator.html#Generator.primarykeycolumnconstraint_sql" > primarykeycolumnconstraint_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.createable_sql" class = "function" > < a href = "../generator.html#Generator.createable_sql" > createable_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "DuckDB.Generator.create_sql" class = "function" > < a href = "../generator.html#Generator.create_sql" > create_sql< / a > < / dd >
2025-02-13 21:30:28 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.prepend_ctes" class = "function" > < a href = "../generator.html#Generator.prepend_ctes" > prepend_ctes< / a > < / dd >
< dd id = "DuckDB.Generator.with_sql" class = "function" > < a href = "../generator.html#Generator.with_sql" > with_sql< / a > < / dd >
< dd id = "DuckDB.Generator.cte_sql" class = "function" > < a href = "../generator.html#Generator.cte_sql" > cte_sql< / a > < / dd >
< dd id = "DuckDB.Generator.tablealias_sql" class = "function" > < a href = "../generator.html#Generator.tablealias_sql" > tablealias_sql< / a > < / dd >
< dd id = "DuckDB.Generator.bitstring_sql" class = "function" > < a href = "../generator.html#Generator.bitstring_sql" > bitstring_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.datatype_sql" class = "function" > < a href = "../generator.html#Generator.datatype_sql" > datatype_sql< / a > < / dd >
< dd id = "DuckDB.Generator.directory_sql" class = "function" > < a href = "../generator.html#Generator.directory_sql" > directory_sql< / a > < / dd >
< dd id = "DuckDB.Generator.delete_sql" class = "function" > < a href = "../generator.html#Generator.delete_sql" > delete_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.set_operation" class = "function" > < a href = "../generator.html#Generator.set_operation" > set_operation< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.fetch_sql" class = "function" > < a href = "../generator.html#Generator.fetch_sql" > fetch_sql< / a > < / dd >
< dd id = "DuckDB.Generator.filter_sql" class = "function" > < a href = "../generator.html#Generator.filter_sql" > filter_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.index_sql" class = "function" > < a href = "../generator.html#Generator.index_sql" > index_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.hex_sql" class = "function" > < a href = "../generator.html#Generator.hex_sql" > hex_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.national_sql" class = "function" > < a href = "../generator.html#Generator.national_sql" > national_sql< / a > < / dd >
< dd id = "DuckDB.Generator.partition_sql" class = "function" > < a href = "../generator.html#Generator.partition_sql" > partition_sql< / a > < / dd >
< dd id = "DuckDB.Generator.properties_sql" class = "function" > < a href = "../generator.html#Generator.properties_sql" > properties_sql< / a > < / dd >
< dd id = "DuckDB.Generator.root_properties" class = "function" > < a href = "../generator.html#Generator.root_properties" > root_properties< / a > < / dd >
< dd id = "DuckDB.Generator.properties" class = "function" > < a href = "../generator.html#Generator.properties" > properties< / a > < / dd >
< dd id = "DuckDB.Generator.with_properties" class = "function" > < a href = "../generator.html#Generator.with_properties" > with_properties< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.property_sql" class = "function" > < a href = "../generator.html#Generator.property_sql" > property_sql< / a > < / dd >
< dd id = "DuckDB.Generator.likeproperty_sql" class = "function" > < a href = "../generator.html#Generator.likeproperty_sql" > likeproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.fallbackproperty_sql" class = "function" > < a href = "../generator.html#Generator.fallbackproperty_sql" > fallbackproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.journalproperty_sql" class = "function" > < a href = "../generator.html#Generator.journalproperty_sql" > journalproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.freespaceproperty_sql" class = "function" > < a href = "../generator.html#Generator.freespaceproperty_sql" > freespaceproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.checksumproperty_sql" class = "function" > < a href = "../generator.html#Generator.checksumproperty_sql" > checksumproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.mergeblockratioproperty_sql" class = "function" > < a href = "../generator.html#Generator.mergeblockratioproperty_sql" > mergeblockratioproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.datablocksizeproperty_sql" class = "function" > < a href = "../generator.html#Generator.datablocksizeproperty_sql" > datablocksizeproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.blockcompressionproperty_sql" class = "function" > < a href = "../generator.html#Generator.blockcompressionproperty_sql" > blockcompressionproperty_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.partitionboundspec_sql" class = "function" > < a href = "../generator.html#Generator.partitionboundspec_sql" > partitionboundspec_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.insert_sql" class = "function" > < a href = "../generator.html#Generator.insert_sql" > insert_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.withtablehint_sql" class = "function" > < a href = "../generator.html#Generator.withtablehint_sql" > withtablehint_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.table_sql" class = "function" > < a href = "../generator.html#Generator.table_sql" > table_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.tuple_sql" class = "function" > < a href = "../generator.html#Generator.tuple_sql" > tuple_sql< / a > < / dd >
< dd id = "DuckDB.Generator.update_sql" class = "function" > < a href = "../generator.html#Generator.update_sql" > update_sql< / a > < / dd >
< dd id = "DuckDB.Generator.values_sql" class = "function" > < a href = "../generator.html#Generator.values_sql" > values_sql< / a > < / dd >
< dd id = "DuckDB.Generator.var_sql" class = "function" > < a href = "../generator.html#Generator.var_sql" > var_sql< / a > < / dd >
< dd id = "DuckDB.Generator.into_sql" class = "function" > < a href = "../generator.html#Generator.into_sql" > into_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.groupingsets_sql" class = "function" > < a href = "../generator.html#Generator.groupingsets_sql" > groupingsets_sql< / a > < / dd >
< dd id = "DuckDB.Generator.rollup_sql" class = "function" > < a href = "../generator.html#Generator.rollup_sql" > rollup_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.group_sql" class = "function" > < a href = "../generator.html#Generator.group_sql" > group_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.connect_sql" class = "function" > < a href = "../generator.html#Generator.connect_sql" > connect_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.lateral_sql" class = "function" > < a href = "../generator.html#Generator.lateral_sql" > lateral_sql< / a > < / dd >
< dd id = "DuckDB.Generator.limit_sql" class = "function" > < a href = "../generator.html#Generator.limit_sql" > limit_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.setitem_sql" class = "function" > < a href = "../generator.html#Generator.setitem_sql" > setitem_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.lock_sql" class = "function" > < a href = "../generator.html#Generator.lock_sql" > lock_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.loaddata_sql" class = "function" > < a href = "../generator.html#Generator.loaddata_sql" > loaddata_sql< / a > < / dd >
< dd id = "DuckDB.Generator.null_sql" class = "function" > < a href = "../generator.html#Generator.null_sql" > null_sql< / a > < / dd >
< dd id = "DuckDB.Generator.boolean_sql" class = "function" > < a href = "../generator.html#Generator.boolean_sql" > boolean_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.cluster_sql" class = "function" > < a href = "../generator.html#Generator.cluster_sql" > cluster_sql< / a > < / dd >
< dd id = "DuckDB.Generator.distribute_sql" class = "function" > < a href = "../generator.html#Generator.distribute_sql" > distribute_sql< / a > < / dd >
< dd id = "DuckDB.Generator.sort_sql" class = "function" > < a href = "../generator.html#Generator.sort_sql" > sort_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.matchrecognize_sql" class = "function" > < a href = "../generator.html#Generator.matchrecognize_sql" > matchrecognize_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.queryoption_sql" class = "function" > < a href = "../generator.html#Generator.queryoption_sql" > queryoption_sql< / a > < / dd >
2025-02-13 16:00:51 +01:00
< dd id = "DuckDB.Generator.offset_limit_modifiers" class = "function" > < a href = "../generator.html#Generator.offset_limit_modifiers" > offset_limit_modifiers< / a > < / dd >
2025-02-13 15:57:23 +01:00
< dd id = "DuckDB.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 = "DuckDB.Generator.select_sql" class = "function" > < a href = "../generator.html#Generator.select_sql" > select_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.star_sql" class = "function" > < a href = "../generator.html#Generator.star_sql" > star_sql< / a > < / dd >
< dd id = "DuckDB.Generator.parameter_sql" class = "function" > < a href = "../generator.html#Generator.parameter_sql" > parameter_sql< / a > < / dd >
< dd id = "DuckDB.Generator.sessionparameter_sql" class = "function" > < a href = "../generator.html#Generator.sessionparameter_sql" > sessionparameter_sql< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "DuckDB.Generator.placeholder_sql" class = "function" > < a href = "../generator.html#Generator.placeholder_sql" > placeholder_sql< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "DuckDB.Generator.subquery_sql" class = "function" > < a href = "../generator.html#Generator.subquery_sql" > subquery_sql< / a > < / dd >
< dd id = "DuckDB.Generator.qualify_sql" class = "function" > < a href = "../generator.html#Generator.qualify_sql" > qualify_sql< / a > < / dd >
2025-02-13 21:29:39 +01:00
< dd id = "DuckDB.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 = "DuckDB.Generator.where_sql" class = "function" > < a href = "../generator.html#Generator.where_sql" > where_sql< / a > < / dd >
< dd id = "DuckDB.Generator.window_sql" class = "function" > < a href = "../generator.html#Generator.window_sql" > window_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.all_sql" class = "function" > < a href = "../generator.html#Generator.all_sql" > all_sql< / a > < / dd >
< dd id = "DuckDB.Generator.any_sql" class = "function" > < a href = "../generator.html#Generator.any_sql" > any_sql< / a > < / dd >
< dd id = "DuckDB.Generator.exists_sql" class = "function" > < a href = "../generator.html#Generator.exists_sql" > exists_sql< / a > < / dd >
< dd id = "DuckDB.Generator.case_sql" class = "function" > < a href = "../generator.html#Generator.case_sql" > case_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.extract_sql" class = "function" > < a href = "../generator.html#Generator.extract_sql" > extract_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.check_sql" class = "function" > < a href = "../generator.html#Generator.check_sql" > check_sql< / a > < / dd >
< dd id = "DuckDB.Generator.foreignkey_sql" class = "function" > < a href = "../generator.html#Generator.foreignkey_sql" > foreignkey_sql< / a > < / dd >
< dd id = "DuckDB.Generator.primarykey_sql" class = "function" > < a href = "../generator.html#Generator.primarykey_sql" > primarykey_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.jsonpath_sql" class = "function" > < a href = "../generator.html#Generator.jsonpath_sql" > jsonpath_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.jsonarray_sql" class = "function" > < a href = "../generator.html#Generator.jsonarray_sql" > jsonarray_sql< / a > < / dd >
< dd id = "DuckDB.Generator.jsonarrayagg_sql" class = "function" > < a href = "../generator.html#Generator.jsonarrayagg_sql" > jsonarrayagg_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.openjsoncolumndef_sql" class = "function" > < a href = "../generator.html#Generator.openjsoncolumndef_sql" > openjsoncolumndef_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.in_sql" class = "function" > < a href = "../generator.html#Generator.in_sql" > in_sql< / a > < / dd >
< dd id = "DuckDB.Generator.in_unnest_op" class = "function" > < a href = "../generator.html#Generator.in_unnest_op" > in_unnest_op< / a > < / dd >
< dd id = "DuckDB.Generator.return_sql" class = "function" > < a href = "../generator.html#Generator.return_sql" > return_sql< / a > < / dd >
< dd id = "DuckDB.Generator.reference_sql" class = "function" > < a href = "../generator.html#Generator.reference_sql" > reference_sql< / a > < / dd >
< dd id = "DuckDB.Generator.anonymous_sql" class = "function" > < a href = "../generator.html#Generator.anonymous_sql" > anonymous_sql< / a > < / dd >
< dd id = "DuckDB.Generator.paren_sql" class = "function" > < a href = "../generator.html#Generator.paren_sql" > paren_sql< / a > < / dd >
< dd id = "DuckDB.Generator.neg_sql" class = "function" > < a href = "../generator.html#Generator.neg_sql" > neg_sql< / a > < / dd >
< dd id = "DuckDB.Generator.not_sql" class = "function" > < a href = "../generator.html#Generator.not_sql" > not_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.add_sql" class = "function" > < a href = "../generator.html#Generator.add_sql" > add_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.connector_sql" class = "function" > < a href = "../generator.html#Generator.connector_sql" > connector_sql< / a > < / dd >
< dd id = "DuckDB.Generator.bitwiseand_sql" class = "function" > < a href = "../generator.html#Generator.bitwiseand_sql" > bitwiseand_sql< / a > < / dd >
< dd id = "DuckDB.Generator.bitwiseleftshift_sql" class = "function" > < a href = "../generator.html#Generator.bitwiseleftshift_sql" > bitwiseleftshift_sql< / a > < / dd >
< dd id = "DuckDB.Generator.bitwisenot_sql" class = "function" > < a href = "../generator.html#Generator.bitwisenot_sql" > bitwisenot_sql< / a > < / dd >
< dd id = "DuckDB.Generator.bitwiseor_sql" class = "function" > < a href = "../generator.html#Generator.bitwiseor_sql" > bitwiseor_sql< / a > < / dd >
< dd id = "DuckDB.Generator.bitwiserightshift_sql" class = "function" > < a href = "../generator.html#Generator.bitwiserightshift_sql" > bitwiserightshift_sql< / a > < / dd >
< dd id = "DuckDB.Generator.bitwisexor_sql" class = "function" > < a href = "../generator.html#Generator.bitwisexor_sql" > bitwisexor_sql< / a > < / dd >
< dd id = "DuckDB.Generator.cast_sql" class = "function" > < a href = "../generator.html#Generator.cast_sql" > cast_sql< / a > < / dd >
< dd id = "DuckDB.Generator.currentdate_sql" class = "function" > < a href = "../generator.html#Generator.currentdate_sql" > currentdate_sql< / a > < / dd >
< dd id = "DuckDB.Generator.collate_sql" class = "function" > < a href = "../generator.html#Generator.collate_sql" > collate_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.mergetreettlaction_sql" class = "function" > < a href = "../generator.html#Generator.mergetreettlaction_sql" > mergetreettlaction_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.transaction_sql" class = "function" > < a href = "../generator.html#Generator.transaction_sql" > transaction_sql< / a > < / dd >
< dd id = "DuckDB.Generator.commit_sql" class = "function" > < a href = "../generator.html#Generator.commit_sql" > commit_sql< / a > < / dd >
< dd id = "DuckDB.Generator.rollback_sql" class = "function" > < a href = "../generator.html#Generator.rollback_sql" > rollback_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.alterdiststyle_sql" class = "function" > < a href = "../generator.html#Generator.alterdiststyle_sql" > alterdiststyle_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.droppartition_sql" class = "function" > < a href = "../generator.html#Generator.droppartition_sql" > droppartition_sql< / a > < / dd >
< dd id = "DuckDB.Generator.addconstraint_sql" class = "function" > < a href = "../generator.html#Generator.addconstraint_sql" > addconstraint_sql< / a > < / dd >
< dd id = "DuckDB.Generator.distinct_sql" class = "function" > < a href = "../generator.html#Generator.distinct_sql" > distinct_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.intdiv_sql" class = "function" > < a href = "../generator.html#Generator.intdiv_sql" > intdiv_sql< / a > < / dd >
< dd id = "DuckDB.Generator.dpipe_sql" class = "function" > < a href = "../generator.html#Generator.dpipe_sql" > dpipe_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.distance_sql" class = "function" > < a href = "../generator.html#Generator.distance_sql" > distance_sql< / a > < / dd >
< dd id = "DuckDB.Generator.dot_sql" class = "function" > < a href = "../generator.html#Generator.dot_sql" > dot_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.escape_sql" class = "function" > < a href = "../generator.html#Generator.escape_sql" > escape_sql< / a > < / dd >
< dd id = "DuckDB.Generator.glob_sql" class = "function" > < a href = "../generator.html#Generator.glob_sql" > glob_sql< / a > < / dd >
< dd id = "DuckDB.Generator.gt_sql" class = "function" > < a href = "../generator.html#Generator.gt_sql" > gt_sql< / a > < / dd >
< dd id = "DuckDB.Generator.gte_sql" class = "function" > < a href = "../generator.html#Generator.gte_sql" > gte_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.is_sql" class = "function" > < a href = "../generator.html#Generator.is_sql" > is_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.similarto_sql" class = "function" > < a href = "../generator.html#Generator.similarto_sql" > similarto_sql< / a > < / dd >
< dd id = "DuckDB.Generator.lt_sql" class = "function" > < a href = "../generator.html#Generator.lt_sql" > lt_sql< / a > < / dd >
< dd id = "DuckDB.Generator.lte_sql" class = "function" > < a href = "../generator.html#Generator.lte_sql" > lte_sql< / a > < / dd >
< dd id = "DuckDB.Generator.mod_sql" class = "function" > < a href = "../generator.html#Generator.mod_sql" > mod_sql< / a > < / dd >
< dd id = "DuckDB.Generator.mul_sql" class = "function" > < a href = "../generator.html#Generator.mul_sql" > mul_sql< / a > < / dd >
< dd id = "DuckDB.Generator.neq_sql" class = "function" > < a href = "../generator.html#Generator.neq_sql" > neq_sql< / a > < / dd >
< dd id = "DuckDB.Generator.nullsafeeq_sql" class = "function" > < a href = "../generator.html#Generator.nullsafeeq_sql" > nullsafeeq_sql< / a > < / dd >
< dd id = "DuckDB.Generator.nullsafeneq_sql" class = "function" > < a href = "../generator.html#Generator.nullsafeneq_sql" > nullsafeneq_sql< / a > < / dd >
< dd id = "DuckDB.Generator.slice_sql" class = "function" > < a href = "../generator.html#Generator.slice_sql" > slice_sql< / a > < / dd >
< dd id = "DuckDB.Generator.sub_sql" class = "function" > < a href = "../generator.html#Generator.sub_sql" > sub_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.use_sql" class = "function" > < a href = "../generator.html#Generator.use_sql" > use_sql< / a > < / dd >
< dd id = "DuckDB.Generator.binary" class = "function" > < a href = "../generator.html#Generator.binary" > binary< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.func" class = "function" > < a href = "../generator.html#Generator.func" > func< / a > < / dd >
2025-02-13 15:23:26 +01:00
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.format_time" class = "function" > < a href = "../generator.html#Generator.format_time" > format_time< / a > < / dd >
< dd id = "DuckDB.Generator.expressions" class = "function" > < a href = "../generator.html#Generator.expressions" > expressions< / a > < / dd >
< dd id = "DuckDB.Generator.op_expressions" class = "function" > < a href = "../generator.html#Generator.op_expressions" > op_expressions< / a > < / dd >
< dd id = "DuckDB.Generator.naked_property" class = "function" > < a href = "../generator.html#Generator.naked_property" > naked_property< / a > < / dd >
< dd id = "DuckDB.Generator.tag_sql" class = "function" > < a href = "../generator.html#Generator.tag_sql" > tag_sql< / a > < / dd >
< dd id = "DuckDB.Generator.token_sql" class = "function" > < a href = "../generator.html#Generator.token_sql" > token_sql< / a > < / dd >
< dd id = "DuckDB.Generator.userdefinedfunction_sql" class = "function" > < a href = "../generator.html#Generator.userdefinedfunction_sql" > userdefinedfunction_sql< / a > < / dd >
< dd id = "DuckDB.Generator.joinhint_sql" class = "function" > < a href = "../generator.html#Generator.joinhint_sql" > joinhint_sql< / a > < / dd >
< dd id = "DuckDB.Generator.kwarg_sql" class = "function" > < a href = "../generator.html#Generator.kwarg_sql" > kwarg_sql< / a > < / dd >
< dd id = "DuckDB.Generator.when_sql" class = "function" > < a href = "../generator.html#Generator.when_sql" > when_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.dictproperty_sql" class = "function" > < a href = "../generator.html#Generator.dictproperty_sql" > dictproperty_sql< / a > < / dd >
< dd id = "DuckDB.Generator.dictrange_sql" class = "function" > < a href = "../generator.html#Generator.dictrange_sql" > dictrange_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.duplicatekeyproperty_sql" class = "function" > < a href = "../generator.html#Generator.duplicatekeyproperty_sql" > duplicatekeyproperty_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.nvl2_sql" class = "function" > < a href = "../generator.html#Generator.nvl2_sql" > nvl2_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.forin_sql" class = "function" > < a href = "../generator.html#Generator.forin_sql" > forin_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.toarray_sql" class = "function" > < a href = "../generator.html#Generator.toarray_sql" > toarray_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.tsordstotimestamp_sql" class = "function" > < a href = "../generator.html#Generator.tsordstotimestamp_sql" > tsordstotimestamp_sql< / a > < / dd >
2025-02-13 21:19:14 +01:00
< dd id = "DuckDB.Generator.tsordstodate_sql" class = "function" > < a href = "../generator.html#Generator.tsordstodate_sql" > tsordstodate_sql< / a > < / dd >
< dd id = "DuckDB.Generator.unixdate_sql" class = "function" > < a href = "../generator.html#Generator.unixdate_sql" > unixdate_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.arrayany_sql" class = "function" > < a href = "../generator.html#Generator.arrayany_sql" > arrayany_sql< / a > < / dd >
< dd id = "DuckDB.Generator.struct_sql" class = "function" > < a href = "../generator.html#Generator.struct_sql" > struct_sql< / a > < / dd >
< dd id = "DuckDB.Generator.partitionrange_sql" class = "function" > < a href = "../generator.html#Generator.partitionrange_sql" > partitionrange_sql< / a > < / dd >
< dd id = "DuckDB.Generator.truncatetable_sql" class = "function" > < a href = "../generator.html#Generator.truncatetable_sql" > truncatetable_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.copyparameter_sql" class = "function" > < a href = "../generator.html#Generator.copyparameter_sql" > copyparameter_sql< / a > < / dd >
< dd id = "DuckDB.Generator.credentials_sql" class = "function" > < a href = "../generator.html#Generator.credentials_sql" > credentials_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.scope_resolution" class = "function" > < a href = "../generator.html#Generator.scope_resolution" > scope_resolution< / a > < / dd >
< dd id = "DuckDB.Generator.scoperesolution_sql" class = "function" > < a href = "../generator.html#Generator.scoperesolution_sql" > scoperesolution_sql< / a > < / dd >
< dd id = "DuckDB.Generator.rand_sql" class = "function" > < a href = "../generator.html#Generator.rand_sql" > rand_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.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 = "DuckDB.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 = "DuckDB.Generator.explodinggenerateseries_sql" class = "function" > < a href = "../generator.html#Generator.explodinggenerateseries_sql" > explodinggenerateseries_sql< / a > < / dd >
< dd id = "DuckDB.Generator.arrayconcat_sql" class = "function" > < a href = "../generator.html#Generator.arrayconcat_sql" > arrayconcat_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.json_sql" class = "function" > < a href = "../generator.html#Generator.json_sql" > json_sql< / a > < / dd >
< dd id = "DuckDB.Generator.jsonvalue_sql" class = "function" > < a href = "../generator.html#Generator.jsonvalue_sql" > jsonvalue_sql< / a > < / dd >
< dd id = "DuckDB.Generator.conditionalinsert_sql" class = "function" > < a href = "../generator.html#Generator.conditionalinsert_sql" > conditionalinsert_sql< / a > < / dd >
< dd id = "DuckDB.Generator.multitableinserts_sql" class = "function" > < a href = "../generator.html#Generator.multitableinserts_sql" > multitableinserts_sql< / a > < / dd >
< dd id = "DuckDB.Generator.oncondition_sql" class = "function" > < a href = "../generator.html#Generator.oncondition_sql" > oncondition_sql< / a > < / dd >
< dd id = "DuckDB.Generator.jsonexists_sql" class = "function" > < a href = "../generator.html#Generator.jsonexists_sql" > jsonexists_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.apply_sql" class = "function" > < a href = "../generator.html#Generator.apply_sql" > apply_sql< / a > < / dd >
< dd id = "DuckDB.Generator.grant_sql" class = "function" > < a href = "../generator.html#Generator.grant_sql" > grant_sql< / a > < / dd >
< dd id = "DuckDB.Generator.grantprivilege_sql" class = "function" > < a href = "../generator.html#Generator.grantprivilege_sql" > grantprivilege_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.columns_sql" class = "function" > < a href = "../generator.html#Generator.columns_sql" > columns_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.todouble_sql" class = "function" > < a href = "../generator.html#Generator.todouble_sql" > todouble_sql< / a > < / dd >
< dd id = "DuckDB.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 = "DuckDB.Generator.median_sql" class = "function" > < a href = "../generator.html#Generator.median_sql" > median_sql< / a > < / dd >
< dd id = "DuckDB.Generator.overflowtruncatebehavior_sql" class = "function" > < a href = "../generator.html#Generator.overflowtruncatebehavior_sql" > overflowtruncatebehavior_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 >