地理空間計算を行うための新しいSqlServer2008管理対象空間タイプとメソッド(地理)を使用して、レコードの半径検索を実行する方法を学習しようとしています。私はこのウェブページのサンプルをフォローしています:
http://msdn.microsoft.com/en-us/magazine/dd434647.aspx
私は特にこのサンプルを実行しようとしています:
-- or declare POINT for "downtown Seattle"
-- 1609.344 meters per mile
DECLARE @Seattle geography = 'POLYGON(....)'; SELECT c.customerid FROM
customer c WHERE c.geog.STIntersects(@Seattle.STBuffer(10 * 1609.344));
ただし、クエリを実行する前(またはquerを実行した場合-コンパイルエラーとランタイムエラーの両方)でも、次のエラーメッセージが表示されます。
An expression of non-boolean type specified in a context where a condition is expected, near ')'
私はこれに本当に困惑しています。私はまったく同じクエリを実行していません(地理列で自分のデータを使用しています)が、サンプルとほぼ同じです。SQL SErver 2008 SP2 StandardEdition64ビットを実行しています。クエリを入力すると、STIntersectionメソッドにインテリセンスが使用され、(other_geography geography)サンプルが表示されるため、メソッドが存在することがわかります。括弧を適切に閉じ、式をセミコロンで区切りますが、エラーが発生する理由がわかりません。グーグルは機能していません。
何かご意見は?
セス