sql 2005 分页排序问题 - MS-SQL Server / 疑难问题
有 user,message两个表
结果如下
user
pkid int
message
pkid int
userid int
Titles nvarchar(50)
CreateTime datetime
要写个 存储过程,输入起始时间和结束时间,统计出每个user在这个时间段的 message 数量 并按数量分页排序,
最佳利用存储过程实现分页的程序
SQL code:
--有 user,message两个表
--结果如下
--user
--pkid int
--name 应该还有个字段
--message
--pkid int
--userid int
--Titles nvarchar(50)
--CreateTime datetime
--要写个 存储过程,输入起始时间和结束时间,统计出每个user在这个时间段的 message 数量 并按数量分页排序
IF OBJECT_ID('[p_test]') IS NOT NULL
DROP PROC [p_test]
GO
CREATE PROC [p_test]
@bt datetime,
@et datetime,
@PageCurrent int=1,--显示第几页
@PageSize int=10 --每页大小
AS
WITH T AS
(
SELECT Rn=row_number()OVER(ORDER BY count(1) DESC),
A.name,count(1) cnt
from [User] A
JOIN [message] B
ON A.pkid=B.pkid
GROUP BY A.name
)
SELECT *
from T
WHERE (Rn-1)/@PageSize+1=@PageCurrent
GO
SQL code:
declare @begintime datetime, @endtime datetime
;with t as
(
select count(*) as num ,u.username from user u,message m
where u.pid=m.userid
and CreateTime between @begintime and @endtime
相关问答:
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jas ......
从数据库中查询一张表的数据
select 部门,姓名 from tb
如何才能生成下面的xml格式
XML code:
<folder state="unchecked" label="全部">
<folder state="unchecked&qu ......
如何在SQL2005中设定定时作业,比如说定时清理某些表的数据,
或者是定时的将某些表的数据导出excel!
在线等待,急急急,最好是详细步骤!
之前我做的作业有点问题!
帮UP
参考:http://hi.baidu.com/toiota ......
我想查询出每天数据的最大的一个值。表的格式如下
表名: hisdata
字段 编号 值 状态 时间
Id value state dattime
101 32.3 0 ......
请教高手:
以下是数据库中的三条记录,英文为字段名称
id planname TaskBeginTime Status
329 2010年03 ......