数据库中各种操作方式累积。这个主要是测试显示使用多种方法
2008-09-09 17:28
746 查看
alter PROCEDURE [dbo].[web_GetAllFriendInfo]
@AdvisorId uniqueidentifier,
@PageSize int,
@PageIndex int,
@Total int output
AS
create table #tmp
(
rowid int,
AdvisorId uniqueidentifier,
FriendId uniqueidentifier
)
insert into #tmp select ROW_NUMBER() over (order by UpdateDate desc) as rowid,AdvisorId,FriendId
from AdvisorDb.dbo.Friends where AdvisorId=@AdvisorId
select a.rowid,a.AdvisorId, b.FriendId,b.email,b.advisorname,b.status,b.gender,
(case when b.risktype is null then N'未知' else b.risktype end) as risktype ,
b.avatar,
(case when b.avatarwidth is null then 0 else b.avatarwidth end) as avatarwidth,
(case when b.avatarheight is null then 0 else b.avatarheight end) as avatarheight
from #tmp a left join
(select pa.*,avatar,avatarwidth,avatarheight from (select AdvisorId as FriendId ,email,advisorname,status,gender,risktype from AdvisorDb.dbo.Advisors t left join AdvisorDb.dbo.RiskResult p on t.AdvisorId=p.AccountId) pa
left join (select email ,avatar,avatarwidth,avatarheight from Discuz.dbo.dnt_users da,Discuz.dbo.dnt_userfields db where da.uid=db.uid) pf
on pa.email collate SQL_Latin1_General_CP1_CI_AS=pf.email) b
on a.FriendId=b.FriendId
where rowid>@PageSize*(@PageIndex-1) and rowid<=@PageSize*@PageIndex
order by rowid
drop table #tmp
declare @total int
exec [web_GetAllFriendInfo] '3AC8F780-365C-48AD-A1A1-03F4913CBA10',20,1,@total output
@AdvisorId uniqueidentifier,
@PageSize int,
@PageIndex int,
@Total int output
AS
create table #tmp
(
rowid int,
AdvisorId uniqueidentifier,
FriendId uniqueidentifier
)
insert into #tmp select ROW_NUMBER() over (order by UpdateDate desc) as rowid,AdvisorId,FriendId
from AdvisorDb.dbo.Friends where AdvisorId=@AdvisorId
select a.rowid,a.AdvisorId, b.FriendId,b.email,b.advisorname,b.status,b.gender,
(case when b.risktype is null then N'未知' else b.risktype end) as risktype ,
b.avatar,
(case when b.avatarwidth is null then 0 else b.avatarwidth end) as avatarwidth,
(case when b.avatarheight is null then 0 else b.avatarheight end) as avatarheight
from #tmp a left join
(select pa.*,avatar,avatarwidth,avatarheight from (select AdvisorId as FriendId ,email,advisorname,status,gender,risktype from AdvisorDb.dbo.Advisors t left join AdvisorDb.dbo.RiskResult p on t.AdvisorId=p.AccountId) pa
left join (select email ,avatar,avatarwidth,avatarheight from Discuz.dbo.dnt_users da,Discuz.dbo.dnt_userfields db where da.uid=db.uid) pf
on pa.email collate SQL_Latin1_General_CP1_CI_AS=pf.email) b
on a.FriendId=b.FriendId
where rowid>@PageSize*(@PageIndex-1) and rowid<=@PageSize*@PageIndex
order by rowid
drop table #tmp
declare @total int
exec [web_GetAllFriendInfo] '3AC8F780-365C-48AD-A1A1-03F4913CBA10',20,1,@total output
相关文章推荐
- SQL Server中使用数据库快照的方式来完成测试环境中数据库的轻量级备份还原操作
- Spring中c3p0连接池的配置 及JdbcTemplate的使用 通过XML配置文件注入各种需要对象的操作 来完成数据库添加Add()方法
- Android开发之使用sqlite3工具操作数据库的两种方式
- VC 7.0 中使用CDaoRecordset 类/使用Dao 方法操作数据库
- C#中使用Char类中的方法对字符进行各种操作,判断是否为字母、数字、标点符号、分隔符或空白。
- Laravel框架数据库CURD操作、连贯操作使用方法
- 反射机制的概述和字节码对象的获取方式 JavaBean的概述&BeanUtils的使用 反射操作构造方法、成员方法、成员属性
- c++ vector(向量)使用方法详解(顺序访问vector的多种方式)
- DbVisualizer 使用方法 图解(可以连接多种数据库的客户端)
- ARX二次开发中使用DAO方式访问数据库,导致AutoCAD2004及以上版本退出时报错的解决方法
- VC++下使用ADO操作数据库的智能指针_ConnectionPtr、_RecordsetPtr、_CommandPtr的方法
- java application 应用程序 使用JDBC proxool 两种方式连接数据库 测试程序代码
- django操作数据库使用中文的方法
- 编程测试顺序容器矢量(vector)的主要功能和使用方法
- 各种数据库使用JDBC连接的方式
- [数据库操作]Java中的JDBC的使用方法.
- sql server 还原数据库时提示数据库正在使用,无法进行操作的解决方法
- PHP使用PDO操作数据库的乱码问题解决方法
- c++ vector(向量)使用方法详解(顺序访问vector的多种方式)
- 各种数据库使用JDBC连接的方式