select FirstName,LastName, ((CAST(SUBSTRING(MAX(PayDate),9,2) AS INT) -
CAST(SUBSTRING(MIN(PayDate),9,2) AS INT)) + 1)*1.0 /
COUNT(PayDate) 'PaymentRate'
from Patient
group by FirstName,LastName
order by PaymentRate
گروه بندی بر اساس نام و نام خانوادگی است و در تاریخ PayDate، حداکثر منهای حداقل شده و مقدار بدست اومده تقسیم بر تعداد پرداخت ها شده است.
هر چه این رقم به یک نزدیکتر باشد به معنی تاخیر کمتر در پرداخت است.
البته اشکالی که در کد بالا وجود داره اینه که فقط روز رو مبنا قرار داده و ماه و سال رو لحاظ نمی کنه میشه اون رو هم دخالت داد.