-2

maps.google.com アドレス テキストボックスを複製しようとしています。だから私は自分のコードtexboxオートコンプリートイベントで使用しました。正確に機能しないクエリを 1 つ書きました。

クエリは次のとおりです。

addressno または streetname を入力すると、両方で機能するはずなので、2 つのワイルドカードを使用しています。しかし、ここでアドレス番号に問題があり、12 と入力すると、6123 ではなく 12 から始まるアドレスのみが表示されます。

クエリ:

select top 10 GEOADDRESS 
from Address_Points 
where " & "GEOADDRESS like '%' + @SearchText + '%'

このクエリは、たとえば addressnumber 12 の入力を開始すると、あらゆる種類の値を返します。この結果が返されます

6123 xyz st,
7812 ggg st

Google マップのアドレス バーのような正確な結果が必要です。

12 と入力し始めると、1234 xyz blv または 1278 pqr blv しか表示されないはずです。xyz blv と入力しても、動作するはずです。

Googleアドレスのテキストボックスのような正確な結果を得ることができるように、クエリを書くのを手伝ってください.

前もって感謝します

4

1 に答える 1

0

文字データの正確な結果を探したい場合は、SQL Server で CONTAINS および FREETEXT 述語を使用できます。MSDNドキュメントにいくつかの例があります。

フルテキスト検索はオプション機能であり、SQL Server にインストールできます。次のコードを使用して、前述の演算子を使用する前に、インスタンスにインストールされていることを確認してください。

SELECT SERVERPROPERTY('IsFullTextInstalled')

クエリは1、機能がインストールされているかどうか0を返しNULLます。

于 2013-11-07T15:36:41.320 に答える