成熟sql 分页存储过程(UP_General_SelectByWhere)

博客展示了一个成熟的SQL分页存储过程UP_General_SelectByWhere。该存储过程接收多个参数,包括选择字段、查询条件、表名、排序字段和排序类型等,根据排序类型设置升序或降序,最后拼接SQL语句并执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ContractedBlock.gifExpandedBlockStart.gifView Code
 1 GO
2 /****** Object: StoredProcedure [dbo].[UP_General_SelectByWhere] Script Date: 03/17/2011 10:49:23 ******/
3 SET ANSI_NULLS ON
4 GO
5 SET QUOTED_IDENTIFIER ON
6 GO
7 -- =============================================
8 -- Author: <Author,,Name>
9 -- Create date: <Create Date,,>
10 -- Description: <Description,,>
11 -- =============================================
12 ALTER PROCEDURE [dbo].[UP_General_SelectByWhere]
13 (
14 @strSelect NVarChar (1000),
15 @strWhere NVarChar (4000),
16 @strTable NVarChar (50),
17 @strOrderfld NVarChar (100),
18 @OrderType bit = 0
19 )
20 AS
21 BEGIN
22 DECLARE @strSQL varchar(8000) -- 主语句
23 DECLARE @strOrder varchar(400) -- 排序类型
24 IF(@strOrderfld!='')
25 BEGIN
26 if @OrderType!= 0 -- 降序(desc)
27 BEGIN
28 set @strOrder = ' order by ' + @strOrderfld +' desc ' --如果@OrderType不是0,就执行降序,这句很重要!
29 END
30 ELSE -- 升序(asc)
31 BEGIN
32 set @strOrder = ' order by ' + @strOrderfld +' asc '
33 END
34 SET @strSQL= ' select '+@strSelect+' from '+ @strTable+' where 1=1 ' + @strWhere+@strOrder
35 END
36 ELSE
37 BEGIN
38 SET @strSQL= ' select '+@strSelect+' from '+ @strTable+' where 1=1 ' + @strWhere
39 END
40 EXECUTE(@strSQL)
41 END

转载于:https://www.cnblogs.com/yeminglong/archive/2011/10/15/2212921.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值