توضیحات
این تابع امکان دستیابی به مقدار یک فیلد در سطرهای قبل از رکورد جاری را فراهم میکند.
دستور
تابع LAG به صورت زیر نوشته میشود:
LAG ( expression [, offset [, default] ] ) OVER ( [ query_partition_clause ] order_by_clause )
.
Offset: گزینهای اختیاری است، تعداد سطر قبل از سطر جاری را مشخص میکند.
Default: گزینهای اختیاری است، مقدار پیش فرض در صورت خارج رنج بودن offset را مشخص میکند.
query_partition_clause: گزینهای اختیاری است، گروهبندی بر روی یک پارتیشن به خصوص را میکند.
order_by_clause: گزینهای اختیاری است، ترتیب سطرها در هر پارتیشن را مشخص میکند.
مثال
مثالی از خروجی تابع LAG را مشاهده میکنیم:
SELECT product_id, order_date, LAG (order_date,1) OVER (ORDER BY order_date) AS prev_order_date FROM orders;