/*后台显示文章列表,可按关键字日期查询,支持分页*/
CREATE  PROCEDURE [dbo].[ArticleManage_List]
@ChannelId varchar(20),
@Title varchar(56),
@StartDate datetime,
@EndDate datetime,
@PageIndex int,
@PageSize int,
@RecordCount int out,
@SiteId int=-1
 AS
declare @sql nvarchar(2000)
set @sql=N'select [ArticleId],
[ChannelId],
[Title],
[Keyword],
[Color],
[IsTop],
[PubDate],
[AuthorName],
[AuthorId],
[IsPictureNews],
[PictureUrl],
[ClickCount],
[ModifyDate],
[SavePath] from Article where ChannelId='+char(39)+@ChannelId+char(39)
set @sql=@sql+char(10)+' and DateDiff(day,getDate(),'+char(39)+cast(@startDate as varchar(20))+char(39)+')<=0'
set @sql=@sql+char(10)+' and DateDiff(day,getDate(),'+char(39)+cast(@endDate as varchar(20))+char(39)+')>=0'
set @sql=@sql+char(10)+' and title like ''%'+@Title+'%'''
--set @sql=@sql+char(10)+' order by PubDate desc'
declare @csql nvarchar(2000)
set @csql='Select @rc=Count(*) from ('+char(10)+@sql+char(10)+') as a'
exec sp_executesql @csql,N'@rc int output',@rc=@recordCount output
set @sql=dbo.GetPagerStr
(
@sql, --查询语句
@PageIndex, --当前页码
@PageSize, --每页大小
'ArticleId', --主键字段
'PubDate desc' --排序字段
)
print @RecordCount
print @sql
exec sp_executesql @sql
GO
我想把 PubDate between @StartDate and @EndDate 这个条件加上去,老加不对帮帮忙