問題タブ [containstable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - 私のContainsTableクエリが機能していません - 助けてください:)
全文カタログのセットアップができました。19 個の項目を持つ 117 の一意のキー カウントがあります。テーブルには 19 行しかありません。
テーブルには、ClientGuid と呼ばれる NVARCHAR(50) フィールドがあります。最後に奇妙なテキストがあるガイドです。
例えば..
- 8b6ef4a504dd1a57f079180e7f6eb4a0(-)
- 8b6ef4a504dd1a57f079180e7f6eb4a0(OK)
(いいえ、私はそのテキスト フィールド データを定義していません。サード パーティの API から取得しています。
とにかく、これは私のSQLであり、それに対して実行するクエリです。クエリを実行すると、ゼロの結果が返されます:(
助言がありますか?サーバーは SQL Server 2008 です。
full-text-search - 全文検索で重み付けする方法
「検索設定」などのフレーズで検索したい。フレーズ自体を最も重み付けしたものとして返したいと思います。
次に、「検索」および/または「設定」を返したいと思います。
そして、最も低いランキングでは、「検索」または「検索」または「設定」が必要です。IsAbout の重みに何を入れればよいかわかりません。
より良い方法はありますか?
sql-server - SQL Server のフル テキストの ContainsTable 関数のランクの問題
完全一致の場合、ContainsTable の結果のランクを上げることができます。
このような全文クエリがあります
select iname,rank from ItemSearch_View sv INNER JOIN CONTAINSTABLE(ItemSearch_View,searchstring, '(FORMSOF(INFLECTIONAL, "google") )',500) AS itable ON sv.itemid = itable.[KEY] ランク順 desc
次の結果を提供します(右側はランクです)
グーグル 352
Google で検索した元教師、320
ググった元彼/彼女の友達 320
ガイ/ガールをググった 320
グーグル 208
アイテム「Google」アイテムがここで上位にランクされる可能性はありますか?
ありがとうビジャイ
sql - SQL Server 2008 CTE と CONTAINSTABLE ステートメント - エラーの理由
データベースを SQL Server 2005 から 2008 に移行するテストを行っています。ページングには CTE を使用しています。
全文 CONTAINSTABLE を使用する場合、CTE は実行されず、エラーが生成されます。
これが私の非動作コードです-
CONTAINSTABLE 行をコメントアウトすると、ステートメントが実行されます。(WITH ではなく) SELECT ステートメントのみを実行すると、ステートメントは正常に実行されます。
これで得られる役に立たないエラーは次のとおりです。
メッセージ 0、レベル 11、状態 0、行 0 現在のコマンドで重大なエラーが発生しました。結果がある場合は、破棄する必要があります。メッセージ 0、レベル 20、状態 0、行 0 現在のコマンドで重大なエラーが発生しました。結果がある場合は、破棄する必要があります。
助言がありますか?
sql-server-2005 - 全文検索で「*」文字を使用する特別な条件はありますか
SQL Server 2005 を使用しています。containstable メソッドでデータベースを検索するストアド プロシージャがあります。問題は、'*'
文字を含むプレフィックスを検索するときに、プレフィックスのみのレコードだけの完全な単語を持つレコードが表示されないことです。たとえば、検索'some'
して変数をに設定し、データベースにレコードを'some*'
持っていますが、結果は「some」を含むレコードのみです文字を含む特別な条件があります'some'
'something'
'*'
sql - フルテキスト インデックスの複数の列に対する AND ステートメント
フルテキスト インデックス テーブルがあり、複数の単語に一致する結果をクエリしようとしています。たとえば、インデックス付きの列 と を含むアドレス テーブルがaddress_text
ありzip_code
ますcity
。
ここで、「Bourbon Baltimore」を検索したいのですが、最初の行だけが必要です。
私は次のことを試しました:
ただし、行はまったく返されません。
sql - 複数の列の結果を取得するために、ContainsTable を使用することは可能ですか?
次の表を検討してください。
人々
- 名 nvarchar(50)
- 姓 nvarchar(50)
ここでは、このテーブルに両方の列のフルテキスト インデックスがあるとします。
このテーブルで「John Smith」という名前の人をすべて検索したいとします。次のクエリは、これを達成するための完全に合理的な方法のようです。
残念ながら、 Peopleテーブルに "John" と "Smith" の両方を FirstName 列または LastName 列に含むレコードがないと仮定すると、結果は返されません。FirstName 列が「John」で、LastName 列が「Smith」のレコード、またはその逆のレコードには一致しません。
私の質問はこれです:私が上でやろうとしていることをどのように達成しますか? 上記の例は単純化されていることを考慮してください。私が扱っている実際のテーブルには 10 列あり、受け取った入力は標準のワード ブレーカー (スペース、ダッシュなど) に基づいて分割された単一の文字列です。
sql-server - ContainsTable キーワードのエスケープ
ContainsTable コントロール キーワード (NEAR や ISABOUT など) をエスケープして、全文検索が実際にそれらの単語を検索し、それらをコントロール キーワードとして扱わないようにするにはどうすればよいですか?
sql - ワイルドカードを使用した CONTAINSTABLE は、SQL Server 2005 と SQL Server 2008 で動作が異なりますか?
SQL Server 2005 と SQL Server 2008 に 2 つの同じデータベースがあり、同じ SQL_Latin1_General_CP1_CI_AS 照合順序があり、全文検索カタログの設定も同じです。
これら 2 つのデータベースには、同じデータのテーブル、NTEXT 文字列が含まれています: "...kræve en forklaring fra miljøminister Connie Hedegaard.."
私の問題は次のとおりです。
クエリが次の場合、SQL Server 2008 の CONTAINSTABLE は何も検出しません。
しかし、SQL Server 2005 は完全に機能し、必要なレコードを見つけます。
クエリが次の場合、SQL Server 2008 は必要なレコードを検索します。
また
そのような奇妙な行動の理由は何でしょうか?
sql - 小さな単語を認識しないCONTAINSTABLEクエリ
CONTAINSTABLE
2つのテーブル列を検索するために使用しています。検索に「」のような小さな単語が含まれると、それらが実際に列に存在する場合でも、検索は結果を返しません。
簡単な例。検索対象の列にテキストが含まれています。「システムをアップグレードする必要があります」
次のSQLは0行を返します
'to'を省略すると、正常に機能します。
CONTAINSTABLE
これらの小さな単語でどのように使用できますか、またはそれらを完全に除外する必要がありますか?これらの小さな単語が実際に検索で意味がある場合、どのようにしてそれらを検索に含めることができますか?