【发布时间】:2016-03-21 03:40:42
【问题描述】:
您好,我有一条 SQL 语句需要限制,但语法不正确!
$strSQL = 'SELECT * FROM BlogItem WHERE Blog_Live=1 LIMIT '.$rowsperpage.' OFFSET '.$offset.''; $objQuery = mssql_query($strSQL)
or die ("Error Query [".$strSQL."]");
谁能给我一些建议?
编辑:
我使用的是 SQL Server 2008
试过这个:
$strSQL = "SELECT * FROM BlogItem WHERE Blog_Live=1 AND RowNum >= ".$offset." AND RowNum < ".$offset." + ".$rowsperpage."";
【问题讨论】:
-
您确定您使用的是 SQL Server 吗?因为那是您在那里使用的 MySQL 语法。如果是 SQL Server,这是一个重复的问题,希望您可以使用我标记的重复的答案之一中提到的较新的
OFFSET和FETCH.... -
变量
$rowsperpage和$offset的值是多少? -
试试这个。
$strSQL = "SELECT * FROM BlogItem WHERE Blog_Live=1 LIMIT $rowsperpage OFFSET $offset"; $objQuery = mssql_query($strSQL) or die ("Error Query [".$strSQL."]"); -
嗨,马特,我已经阅读了副本,但仍然不确定如何格式化我的 SQL 查询,我使用的是 SQL Server 2008!任何建议表示赞赏!
-
我相信
OFFSET和FETCH仅在 SQL Server 2012 及更高版本中可用,因此您必须使用使用ROW_NUMBER()的更复杂的旧语法之一,就像在那个重复的问题。我会说你应该尝试这样做,如果你有问题,就你遇到的问题的细节提出一个新的问题。
标签: php sql sql-server