SQL Server 2008 ORDER BY sqlsrv PHP 驱动程序上的错误


SQL Server 2008 ORDER BY Error on sqlsrv php driver

我有一个查询,可以根据表中存储的 lng 和 lat 按距离过滤结果:

SELECT *, (3960 * acos( cos( radians( 51.8026795 ) ) * cos( radians( advert.lat ) ) * cos( radians( advert.lng ) - radians( -0.7201327 ) ) + 
sin( radians( 51.8026795 ) ) * sin( radians( advert.lat ) ) ) ) AS Distance 
FROM advert 
INNER JOIN photo ON advert.id = photo.advertid 
WHERE photo.main = 'True' AND advert.status<>0 
ORDER BY advert.price ASC

这在SQL Server Management Studio中工作正常并返回正确的值,但是当我使用驱动程序在PHP中使用完全相同的查询时sqlsrv我得到:

执行查询时出错。 数组 ( [0] => 数组 ( [0] => 42000 [SQLSTATE] => 42000 1 => 156 [code] => 156 [2] => [Microsoft][SQL 服务器本机客户端 10.0][SQL Server]附近的语法不正确 关键字"AND"。[消息] => [Microsoft][SQL Server 本机客户端 10.0][SQL Server]关键字"AND"附近的语法不正确。) )

我做了一些非常简单的事情来修复吗?!

您可以通过单击搜索然后输入邮政编码 DeveloperDream.com 查看问题

提前致谢

想通了 - 有另一个搜索词被错误地添加到查询的末尾,但没有被回显,感谢迈克尔在第一个实例中提出这个建议