حالا که با بخش بندی های این دوره آشنا شدید، بیایید باهم کلمه های کلیدی و عبارت هایی که در این آموزش با آنها ارتباط خواهیم داشت و مرتب خواهیم دید را به صورت یکجا در این بخش داشته باشیم و برای هر کدام یک تعریف مختصر بخوانیم تا در صورت نیاز بتوانیم به آنها رجوع کنیم. با این عبارت ها در بخش های بعدی به صورت مشروح آشنا خواهید شد.
Window Function
یک Window Function که به عنوان یک تابع تحلیلی نیز شناخته میشود، نوع خاصی از تابع SQL است که محاسباتی را در مجموعهای از ردیفهای جدول انجام میدهد که با ردیف فعلی مرتبط هستند. این توابع به شما امکان می دهد با یک "پنجره" از داده ها در مجموعه نتایج کوئری خود کار کنید.
Window Frame
زیرمجموعه سطرهای داخل یک پارتیشن را که Window Function روی آن کار می کند، تعریف می کند. Widnow Frame توسط ROWS یا RANGE در عبارت OVER تعیین می شود. فریم (یا قاب) مشخص می کند که کدام ردیف ها در محاسبه نسبت به ردیف فعلی گنجانده شده اند.
Partition
پارتیشن یک تقسیم منطقی از مجموعه نتایج به گروه ها یا زیر مجموعه ها بر اساس یک یا چند ستون مشخص شده در عبارت PARTITION BY است. Window Function به طور مستقل در هر پارتیشن عمل می کند.
ORDER BY
ORDER BY در عبارت OVER ترتیب پردازش سطرها را در هر پارتیشن تعیین می کند. مشخص کردن این ویژگی ضروری است زیرا توالی محاسبات را مشخص می کند. سطرها معمولاً توسط یک یا چند ستون به ترتیب صعودی یا نزولی مرتب می شوند.
ROWS
عبارت ROWS برای تعیین Window Frame بر حسب تعداد ثابت ردیف نسبت به ردیف فعلی استفاده می شود. برای مثال، میتوانید از ROWS BETWEEN 2 PRECEDING AND 2 FLOOWING برای قرار دادن دو ردیف قبل و دو ردیف بعد از ردیف فعلی در frame استفاده کنید.
RANGE
از عبارت RANGE برای تعیین Window Frame بر اساس مقادیر در ترتیب مشخص شده استفاده می شود. ردیف هایی با مقادیر مساوی به عنوان یک "محدوده" واحد در نظر گرفته می شوند. RANGE می تواند هنگام کار با داده هایی که مقادیر تکرار شونده دارند مفید باشد.
Function
تابعی که در Window Function استفاده میکنید، عملیاتی را که میخواهید روی ردیفهای داخل Window Frame انجام دهید را مشخص میکند. به عنوان مثال می توان به SUM، AVG، RANK، ROW_NUMBER، و بسیاری دیگر اشاره کرد.
Ties
پیوندها زمانی اتفاق میافتند که دو یا چند ردیف در ستون(های) مرتبسازی مقدار یکسانی داشته باشند. Window Functionها بسته به عملکرد مورد استفاده، پیوندها را به طور متفاوتی مدیریت می کنند. به عنوان مثال، RANK همان رتبه را به ردیف های همبسته اختصاص می دهد و شکاف ها را باقی می گذارد، در حالی که DENSE_RANK همان رتبه را بدون شکاف اختصاص می دهد.
این عبارات برای درک نحوه عملکرد Window Functionها و نحوه استفاده موثر از آنها در کوئری های SQL ضروری هستند.