All pastes #813059 Raw Edit

xpg934

public sql v1 · immutable
·published 2007-12-12 06:32 UTC
rendered paste body
CREATE   PROCEDURE [dbo].[BillingGetUsers]  @date1 datetime,  @date2 datetimeAS-- проверяем чтобы даты не были больше текущейif (@date2 > GETDATE())  set @date2 = GETDATE()if (@date2 < @date1)    return-- выбираем всех юзеров, у которых были сессии пересекающиеся с заданным диапазоном-- если сессия ещё не закрыта - тоже считаемselect  [UserID],  (select [FIO] from [Users] where [ID] = b.[UserID]) as [UserName]from  [Billing] b with (nolock)where  [EventTypeID] = 10 and   ([PeriodDT1] < @date2 and ([PeriodDT2] is null or [PeriodDT2] > @date1))group by  [UserID]order by  [UserName]