mysql2008 limit_MySQL LIMIT子句等效于SQL SERVER

ccba3a4b5794de189ae1589d583261a9.png

一只甜甜圈

在SQL Server 2012中,支持ANSI标准OFFSET/ FETCH语法。我在博客上发表了这篇文章,这是官方文档(这是的扩展ORDER BY)。为SQL Server 2012转换的语法为:SELECT ID, Name, Price, Image   FROM Products   ORDER BY ID ASC   OFFSET (@start_from - 1) ROWS -- not sure if you need -1    -- because I don't know how you calculated @start_from  FETCH NEXT @items_on_page ROWS ONLY;在此之前,您需要使用各种解决方法,包括ROW_NUMBER()方法。请参阅本文和后续讨论。如果您不在SQL Server 2012上,则不能使用标准语法或MySQL的非标准语法,LIMIT但可以使用更详细的解决方案,例如:;WITH o AS(    SELECT TOP ((@start_from - 1) + @items_on_page)         -- again, not sure if you need -1 because I          -- don't know how you calculated @start_from      RowNum = ROW_NUMBER() OVER (ORDER BY ID ASC)      /* , other columns */    FROM Products)SELECT     RowNum    /* , other columns */FROM    oWHERE    RowNum >= @start_fromORDER BY    RowNum;还有很多其他方法可以为这只猫蒙皮,这可能不是最有效的方法,但是从语法角度来说可能是最简单的方法。我建议查看我发布的链接以及对该问题的评论中指出的重复建议。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值