select语句返回结果的一部分

时间:2013-08-24 00:56:01

标签: mysql sql sql-server select stored-procedures

例如:

 @productName varchar(50),
    @pageStart int,
    @pageEnd int,
    @result varchar(MAX)

    set @result = select * from products where productName like '%@productName%' 

    return select from @result where section between @pageStrat to  @pageEnd

这是我的想象,如果这是正确的?或者有一个陈述可以做结果

2 个答案:

答案 0 :(得分:1)

declare @productName varchar(50),
    @pageStart int,
    @pageEnd int,
    @result varchar(MAX)

select  *  from (select *,ROW_NUMBER() over (order by ID) as row from products where 
productName like @productName) a where a.row between @pageStart and @pageEnd

答案 1 :(得分:1)

替换

'%@productName%' 

'%' + @productName + '%'

您正在寻找包含文字“@productName”的字符串,我认为这不是您想要的。也:

between @pageStrat to  @pageEnd

应该是

between @pageStart and @pageEnd

注意拼写错误的@pageStart和版本中的“to”而不是“and”。