在两个不同的服务器之间遇到NTILE()问题

时间:2012-01-06 11:18:31

标签: sql sql-server sql-server-2008 sql-server-2005

我在开发中的一个数据库服务器中执行以下查询(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()时我是否需要特别考虑?

你会很感激你的想法吗?

0 个答案:

没有答案