
    g                     8   d Z ddlmZmZmZ dZdZ G d dej                        Z G d dej                        Z	d	Z
 G d
 de      Z G d de      Z G d de      Z G d de      Z G d dee      Z G d dee      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d  d!e      Z G d" d#e      Z G d$ d%e      Z G d& d'e      Z G d( d)e      Z G d* d+e      Z G d, d-e      Z G d. d/e      Z G d0 d1e      Zy2)3z-
Package for SQL analytic functions wrappers
    )AnalyticFunctionWindowFrameAnalyticFunctionIgnoreNullsAnalyticFunctionzTimothy Heysztheys@kayak.comc                       e Zd ZdZy)	Preceding	PRECEDINGN__name__
__module____qualname__modifier     E/var/www/openai/venv/lib/python3.12/site-packages/pypika/analytics.pyr   r          Hr   r   c                       e Zd ZdZy)	Following	FOLLOWINGNr	   r   r   r   r   r      r   r   r   zCURRENT ROWc                        e Zd Z fdZ xZS )Rankc                 ,    t        t        | 
  di | y )N)RANK)superr   __init__selfkwargs	__class__s     r   r   zRank.__init__   s    dD"4V4r   r
   r   r   r   __classcell__r   s   @r   r   r      s    5 5r   r   c                        e Zd Z fdZ xZS )	DenseRankc                 ,    t        t        | 
  di | y )N)
DENSE_RANK)r   r#   r   r   s     r   r   zDenseRank.__init__       i'??r   r   r!   s   @r   r#   r#          @ @r   r#   c                        e Zd Z fdZ xZS )	RowNumberc                 ,    t        t        | 
  di | y )N)
ROW_NUMBER)r   r)   r   r   s     r   r   zRowNumber.__init__$   r&   r   r   r!   s   @r   r)   r)   #   r'   r   r)   c                        e Zd Z fdZ xZS )NTilec                 0    t        t        | 
  d|fi | y )NNTILE)r   r-   r   r   termr   r   s      r   r   zNTile.__init__)       eT#GT<V<r   r   r!   s   @r   r-   r-   (       = =r   r-   c                        e Zd Z fdZ xZS )
FirstValuec                 4    t        t        | 
  dg|i | y )NFIRST_VALUE)r   r5   r   r   termsr   r   s      r   r   zFirstValue.__init__.   s    j$(II&Ir   r   r!   s   @r   r5   r5   -   s    J Jr   r5   c                        e Zd Z fdZ xZS )	LastValuec                 4    t        t        | 
  dg|i | y )N
LAST_VALUE)r   r;   r   r8   s      r   r   zLastValue.__init__3   s    i'GuGGr   r   r!   s   @r   r;   r;   2       H Hr   r;   c                        e Zd Z fdZ xZS )Medianc                 0    t        t        | 
  d|fi | y )NMEDIAN)r   r@   r   r0   s      r   r   zMedian.__init__8       fd$Xt>v>r   r   r!   s   @r   r@   r@   7       ? ?r   r@   c                        e Zd Z fdZ xZS )Avgc                 0    t        t        | 
  d|fi | y )NAVG)r   rF   r   r0   s      r   r   zAvg.__init__=       c4!%88r   r   r!   s   @r   rF   rF   <       9 9r   rF   c                        e Zd Z fdZ xZS )StdDevc                 0    t        t        | 
  d|fi | y )NSTDDEV)r   rL   r   r0   s      r   r   zStdDev.__init__B   rC   r   r   r!   s   @r   rL   rL   A   rD   r   rL   c                        e Zd Z fdZ xZS )	StdDevPopc                 0    t        t        | 
  d|fi | y )N
STDDEV_POP)r   rP   r   r0   s      r   r   zStdDevPop.__init__G   s    i'dEfEr   r   r!   s   @r   rP   rP   F   s    F Fr   rP   c                        e Zd Z fdZ xZS )
StdDevSampc                 0    t        t        | 
  d|fi | y )NSTDDEV_SAMP)r   rT   r   r0   s      r   r   zStdDevSamp.__init__L   s    j$(GGr   r   r!   s   @r   rT   rT   K   r>   r   rT   c                        e Zd Z fdZ xZS )Variancec                 0    t        t        | 
  d|fi | y )NVARIANCE)r   rX   r   r0   s      r   r   zVariance.__init__Q   s    h&z4B6Br   r   r!   s   @r   rX   rX   P   s    C Cr   rX   c                        e Zd Z fdZ xZS )VarPopc                 0    t        t        | 
  d|fi | y )NVAR_POP)r   r\   r   r0   s      r   r   zVarPop.__init__V   s    fd$Y??r   r   r!   s   @r   r\   r\   U   r'   r   r\   c                        e Zd Z fdZ xZS )VarSampc                 0    t        t        | 
  d|fi | y )NVAR_SAMP)r   r`   r   r0   s      r   r   zVarSamp.__init__[   s    gt%j$A&Ar   r   r!   s   @r   r`   r`   Z   s    B Br   r`   c                        e Zd Z fdZ xZS )Countc                 0    t        t        | 
  d|fi | y )NCOUNT)r   rd   r   r0   s      r   r   zCount.__init__`   r2   r   r   r!   s   @r   rd   rd   _   r3   r   rd   c                        e Zd Z fdZ xZS )Sumc                 0    t        t        | 
  d|fi | y )NSUM)r   rh   r   r0   s      r   r   zSum.__init__e   rI   r   r   r!   s   @r   rh   rh   d   rJ   r   rh   c                        e Zd Z fdZ xZS )Maxc                 0    t        t        | 
  d|fi | y )NMAX)r   rl   r   r0   s      r   r   zMax.__init__j   rI   r   r   r!   s   @r   rl   rl   i   rJ   r   rl   c                        e Zd Z fdZ xZS )Minc                 0    t        t        | 
  d|fi | y )NMIN)r   rp   r   r0   s      r   r   zMin.__init__o   rI   r   r   r!   s   @r   rp   rp   n   rJ   r   rp   c                        e Zd Z fdZ xZS )Lagc                 4    t        t        | 
  dg|i | y )NLAG)r   rt   r   r   argsr   r   s      r   r   zLag.__init__t   s    c4!%9$9&9r   r   r!   s   @r   rt   rt   s   s    : :r   rt   c                        e Zd Z fdZ xZS )Leadc                 4    t        t        | 
  dg|i | y )NLEAD)r   rz   r   rw   s      r   r   zLead.__init__y   s    dD"6;D;F;r   r   r!   s   @r   rz   rz   x   s    < <r   rz   N)__doc__pypika.termsr   r   r   
__author__	__email__Edger   r   CURRENT_ROWr   r#   r)   r-   r5   r;   r@   rF   rL   rP   rT   rX   r\   r`   rd   rh   rl   rp   rt   rz   r   r   r   <module>r      si    
	+00 +00  5 5
@  @
@  @
= =
J,.I J
H+-H H
? ?
9
% 9
?( ?
F+ F
H, H
C* C
@( @
B) B
=' =
9
% 9
9
% 9
9
% 9
:
 :
< <r   