Php SQL Server输出不一致的数据

Php SQL Server输出不一致的数据,php,sql,sql-server,Php,Sql,Sql Server,对于这个查询,我得到了奇怪的结果 <? include('conf/conector.php'); echo "start"; $connSQL = mssql_connect($AconnSQL[$CONF_connSQL_default][1], $AconnSQL[$CONF_connSQL_default][2], $AconnSQL[$CONF_connSQL_default][3]); mssql_select_db($AconnSQL[$CONF_connSQL_defaul

对于这个查询,我得到了奇怪的结果

<?
include('conf/conector.php');
echo "start";
$connSQL = mssql_connect($AconnSQL[$CONF_connSQL_default][1], $AconnSQL[$CONF_connSQL_default][2], $AconnSQL[$CONF_connSQL_default][3]);
mssql_select_db($AconnSQL[$CONF_connSQL_default][4],$connSQL);
$result = mssql_query("SELECT TOP 300 coditm, descripcion, codsbr FROM items WITH(NOLOCK) WHERE itemprefi='B' AND descripcion != '' AND descripcion IS NOT NULL");
echo "<br>rows: ".mssql_num_rows($result).'<br>';
mssql_free_result($result);
mssql_close($connSQL);
echo "end";
include('../includes/funciones/conector_by.php');
?>
它打印行:272如果我用mssql_fetch_数组执行“while”,我也会得到272行

如果我把500强也得到272行

这只是疯狂,但它变得更疯狂

如果我跑步:

SELECT count(*) as test
FROM items WITH(NOLOCK)
WHERE itemprefi='B' AND descripcion != '' AND descripcion IS NOT NULL
测试列是1936,这是实际行数


我完全糊涂了,我不知道在哪里查找错误。我已经在同一台服务器上使用mssql_*很长时间了,我从来没有遇到过这样的问题。只有在这个表中才会出现这种情况。

您对该表进行了索引吗?我认为有些结果可能是重复的。尝试使用关键字distinct并查看您得到的结果。我不知道该表是否已编制索引,因为我只有远程访问权限。我试着用countcoditm得到了1936。用countdistinct coditm得到了1。
SELECT count(*) as test
FROM items WITH(NOLOCK)
WHERE itemprefi='B' AND descripcion != '' AND descripcion IS NOT NULL