خانه نیک آموز TV SQL Server آشنایی با Window Function ها در SQL SQL Server ۳.۱ (۷) Window Function ها در SQL یک نوع تابع است که برروی مجموعه دادهها عمل میکند و نتیجه را براساس یک پنجره (Window) از ردیفها محاسبه میکند. یکی از روشهای جایگزین برای کوئریهای تحلیلی که از جنس GROUP BY هستند، استفاده از Window Function است. عملکرد این تابع تقریباً شبیه GROUP BY است؛ با این تفاوت که کار با آنها بسیار سادهتر است و نقاط ضعفی که در GROUP BY مشاهده میشود، در این تابع دیده نمیشود و همینطور در اکثر موارد، پرفورمنس در روش Window Function بسیار بالاتر از GROUP BY است. اجزای Window Function ها در SQL Window Function ها در SQL دارای اجزای مختلفی هستند: Partition ORDER BY frame در بخش Partition مشخص میکنیم که گروهبندی ما براساس چه فیلد یا فیلدهایی انجام میشود. درواقع، در اینجا ما داریم GROUP یا Partition یا Window را تعیین میکنیم. با استفاده از ORDER میتوانیم مشخص کنیم که رکوردهای داخل هر Partition یا Window، براساس چه فیلد یا فیلدهایی مرتب است که میتوانید برای اطلاع دقیق از نحوه استفاده از این دستور، مقاله دستور مرتب سازی (Order By) در SQL Server را مطالعه نمایید. frame نیز آخرین جزء Window Function است. عملکرد Window Function ها در SQL در بخش Partition، رکوردها را گروهبندی کردیم و بااستفاده از ORDER، مرتبسازی را در هر Partition یا Window انجام دادیم. حالا قرار است یک Function از بیرون بیاید و روی هرکدام از این Window، یکسری محاسبات انجام دهد. ما میتوانیم بااستفاده از مفهوم frame مشخص نماییم که در هر لحظه، آن Function با چه تعداد رکوردی سروکار داشته باشد و محاسبات را انجام دهد. توجه داشته باشید که frame صرفاً در بعضی از انواع Window Function قابل استفاده است. همینطور اجزای مختلف Window Function شامل Partition و ORDER و frame متناسب با نوع Window Function میتواند اختیاری یا اجباری باشد. پیشنهاد میکنیم مقاله شش مفهوم کلیدی برای تسلط بر Window Functions در SQL Server را برای درک بهتر این مفهوم، مطالعه نمایید. چه رتبه ای میدهید؟ میانگین ۳.۱ / ۵. از مجموع ۷ اولین نفر باش