按日期统计收益,一天的收益数据合并为一条。一天一条数据

--统计今日金额合并为一条。一天一条数据
create proc sp_TableName
@uid int,
@bid int
as
begin
        SELECT   SUM([Money]) AS [Money], CONVERT(varchar(100), CreateTime, 23) AS CreateTime
FROM      dbo.TableName
WHERE   (UID = @uid) AND (MID = @bid)
GROUP BY CONVERT(varchar(100), CreateTime, 23)
end


--分页:
create proc sp_TableNameByPage
@uid int,
@bid int,
@pageIndex int=1, -- 第几页
@pageSize int=10  -- 每页包含的记录数
@pageCount int output,    --总页数
@dataCount int output    --总的记录条数
as
begin
      select top (select @pageSize) *     -- 这里注意一下,不能直接把变量放在这里,要用select
    from (select row_number() over(order by  CONVERT(varchar(100), CreateTime, 23)) as rownumber, SUM([Money]) AS [Money],
     CONVERT(varchar(100), CreateTime, 23) AS CreateTime
    from  dbo.TableName where (UID = @uid) AND (BonusID = @bid) 
    GROUP BY CONVERT(varchar(100), CreateTime, 23)) temp_row 
    where  rownumber>(@pageIndex-1)* @pageSize;

    set @dataCount = (select count(*) from dbo.TableName)
    set @pageCount = (CEILING(@dataCount*1.0/@pageSize))
 end

存储过程!~

猜你喜欢

转载自www.cnblogs.com/heheblog/p/10802115.html