我在开发中的一个数据库服务器中执行以下查询(SQL SERVER 2005 - SP4)正确返回结果。
SELECT QRA.QueryResultAttributeId, QRA.AttributeName,
QRA.PropertyName, QRV.value, PageNumber =
NTILE(741) OVER (ORDER BY QRV.QueryResultValueId),
QRV.QueryResultValueId
FROM QueryResultValue AS QRV with (NoLock)
INNER JOIN QueryResultAttribute AS QRA with (NoLock)
ON QRV.QueryResultAttributeId = QRA.QueryResultAttributeId
INNER JOIN QueryResult QR with (NoLock)
ON QR.QueryId = QRA.QueryId
WHERE QR.QueryId =3
ORDER BY QRV.QueryResultValueId
但是当我在生产服务器中执行相同的查询时,NTILE返回奇数而不是页码。 (典型的NTILE行为)。这两种环境都具有相同的架构。
我在这里遗漏了什么,或者在使用NTILE()时我是否需要特别考虑?
你会很感激你的想法吗?