我有一个查询,可以根据表中存储的 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 查看问题
提前致谢
想通了 - 有另一个搜索词被错误地添加到查询的末尾,但没有被回显,感谢迈克尔在第一个实例中提出这个建议