問題タブ [match-against]
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.
mysql - Mysql Match() Against() が機能しない
で使用MATCH.....AGAINSTしてphpMyAdminいますが、機能しません
ここに表があります。
ここにクエリがありますphpMyAdmin
結果が返されません。
しかし、ソフトウェアという単語は両方の文に含まれています。
これについて私を案内してください。
ありがとう....
mysql - MySQL の MATCH ('...' IN NATURAL LANGUAGE MODE) の可能な最大値の範囲はどれくらいですか?
MySQL は、構文FULLTEXTで取得できるインデックスを提供します。MATCH (col1,col2,...) AGAINST (expr [search_modifier])いくつかの全文検索バリアントがあり、そのうちの 1 つ (およびデフォルトのバリアント) は自然言語全文検索です。
では、MATCH ('...' IN NATURAL LANGUAGE MODE) の可能な最大値は何ですか?
例:
このクエリ
は、 の行relevanceの関連性値を格納している列 を含む結果テーブルを返します。または、行の関連値ですか? とにかく、関数の出力をそこに保存しています。私の場合、 からまでの値を取得しています。coursedata.title'Basketball''Basketball'coursedata.titleMATCH(...)03.695953130722046
mysql - MYSQL を使用してスコアを生成するときにすべての結合をチェックする方法
MYSQL を使用して、クエリによって返される各結果のスコアを生成しています。結果はスコア順に並べられます。
うまく機能していないように見える部分は、検索された各タグにスコアを追加して結果を割り当てようとしているときです。たとえば、「example」、「test」、および「tag」というタグを検索し、結果の 1 つが「example」、「test」、「someothertag」というタグに割り当てられているとします。スコアは 10 になるはずです。 2試合あるから。
実際に起こっていることは、一致するタグの数に関係なく、一致する場合は 5 のスコアを取得していることです。一致するタグがない場合は 0。
検索から生成されるクエリの 1 つの例を次に示します。
mysql - MySQL MATCH() AGAINST()
date「2013-04」であるデータベースからすべてのレコードを検索したい。
私が使う:
しかし、日付が ' に等しいレコードを取得するため、正しい答えは得られません2013-01-29', '2013-03-28'。
私の質問は、MATCH() AGAINST()like 関数LIKE() を"2013-04%"?で使用する方法です。
mysql - 興味深い MATCH AGAINST の問題: 一部の単語を検索しない
次のようなテーブルがあります。
そして、私は基本的に次のように全文検索を使用しています:
だから私がヘッドセットを検索したとき、mysqlは1.812121のスコアを本当に与えました。
しかし、私がiphoneを検索したとき; mysql は 0 スコアを与えます。
Ps: ft_min_word_len = 2
mysql - プラス記号を使用したMysql全文検索
問題があります。
私のMySql dbには、製品テーブルに40000行あります。テーブルにはT9Textという列があります。私の行の 1 つ T9Text 領域は次のようになります。
UNISNLS106B UNI.SNLS 106B SNLS-106B M.OT. 12V 2DelíkMotorCraftTípāUnipoint66-205 66205 F02Z-11390-A F02Z11390A E90Z-11390-A E90Z11390A F4DZ-11390-A F4DZ11390A F37790-A F3VY1390ZZZZZZZZZZZZZ11390A
オートコンプリート プロセスのために、db でストアド プロシージャを実行します。それはそのようなものです:
このように、うまく機能し、1 行だけを返します。
しかし、次のように where 条件を記述する必要があります。
上記のコードでは、1877 行が返されます。プラス記号が機能しないようです
最初のクエリでは 1 行が返されますが、2 番目のクエリでは 0 行が返されます。
それで、私の質問があります: mysql の全文検索では、+テスト式を使用できませんか? そうでない場合、これを行う方法はありますか?(いいねを除く)
mysql - ブール値モードでの MySQL の一致は、中間の単語で何も返しません
MySQL データベースで Match Against を使用する際に問題が発生しました。誰かが助けてくれることを願っています。
これは私のデータベースのデータの例です:
このクエリを実行すると:
これにより、最初の結果が返されます。
ただし、これは非常に大きなクエリの一部であり、Match Against コードを実行すると、これらのクエリのいずれからも何も返されません。
全文検索をオンにしており、名前の先頭を検索すると機能します。
どちらも次を返します。
解決策としてこれを読みました:http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html
そして、私はここを見てきました: mysql WHERE MATCH AGAINST
誰かが私がどこで間違っているかを確認したり、正しい方向に向けたりできますか?
ありがとう!
編集
以下のWoot4Mooの素晴らしい回答に従って、コードを変更して、存在しないはずのコンマを削除しました。+ も追加して一重引用符で囲みましたが、まだうまくいきません。
現在のクエリは次のようになります。
しかし、クエリ ブラウザには結果が返されず、エラーや警告も返されません。
php - OR 条件を使用した全文検索用の Mysql クエリ
と の 2 つのオプションのみを含むドロップダウン リストがありAndますOr。これら 2 つのオプションを選択すると、クエリが実行されますが、選択内容によって異なります。を選択するAndと、クエリが変更されます。私のクエリは次のようになります。
条件を追加しMATCH AGAINSTたい部分に注意してください。条件を選択するときにロジックを使用してクエリが一致し、条件を選択するときにロジックを使用してクエリが一致する場合、どうすればよいですか。どんな助けでも構いません。ありがとう。AndOrAndnode_nameANDOrnode_nameOR