sql 语句。

求一个sql 语句。。。
SELECT COUNT(DISTINCT UserID) FROM ChangeMoneyInfo where ChangeTypeID=1 and ChangeTime>=Isnull(@DTime,ChangeTime) and ChangeTime<=Isnull(@DTimeEnd,ChangeTime)


这个是统计当天有多少人充值的,ChangeTypeID=1 代表数据时充值,我想写一个就是在这个时间范围内有哪些人是第一次充值的。不知道怎么写。。。
------解决方案--------------------

SELECT  COUNT(DISTINCT UserID)
FROM    ChangeMoneyInfo a
WHERE   ChangeTypeID = 1
        AND ChangeTime >= @DTime
        AND ChangeTime <= @DTimeEnd
        AND NOT EXISTS(SELECT 1 FROM ChangeMoneyInfo
                                          WHERE UserID=a.UserID AND ChangeTypeID = 1 AND ChangeTime<@DTime
                                         )

------解决方案--------------------
擦,写出来的和11楼的一样
SELECT  COUNT(DISTINCT UserID)
FROM    [ChangeMoneyInfo] a
WHERE   ChangeTypeID = 1
        AND NOT EXISTS ( SELECT 1
                         FROM   [ChangeMoneyInfo] b
                         WHERE  b.userid = a.userid
                                AND b.ChangeTypeID = 1
                                AND b.changetime < @DTime )
        AND ChangeTime >= @DTime
        AND ChangeTime <= @DTimeEnd