テーブルに保存されている 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
sqlsrv
これは SQL Server Management Studio で正常に機能し、正しい値を返しますが、ドライバーを使用して PHP でまったく同じクエリを使用すると、次のようになります。
クエリの実行中にエラーが発生しました。配列 ( [0] => 配列 ( [0] => 42000 [SQLSTATE] => 42000 1 => 156 [コード] => 156 [2] => [Microsoft][SQL Server Native Client 10.0][SQL Server]キーワード 'AND' 付近の構文が正しくありません。[メッセージ] => [Microsoft][SQL Server Native Client 10.0][SQL Server]キーワード 'AND' 付近の構文が正しくありません。) )
本当に簡単に修正できましたか?!
検索をクリックしてから郵便番号を入力すると、 DeveloperDream.comで問題を確認できます。
前もって感謝します