問題タブ [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.

0 投票する
2 に答える
184 参照

mysql - スコアを返さないことに対して

このクエリに何か問題がありますか?これは時々機能し、時には機能しません。たとえば、「seven」という単語ではスコアは返されませんが、少なくとも本文の29行に表示されますが、スコア0として返されます。

言い換えれば、それは問題なく動作しますが、これでは動作しません。誰かが理由を知っているか、関連性によってそれをソートするための別の解決策を持っていますか?

編集:「7」がストップワードであることに気づきました。これを行う他の方法はありますか?ストップワード

0 投票する
1 に答える
1165 参照

mysql - MySQLの参加と一致/検索の失敗

私は基本的に記事(または著者からの記事)を見つけるための検索を作成しようとしています。私はこのクエリに行き着きました:

一致した4つのフィールドすべてがフルテキストインデックスであることを確認しました。検索は、「Kevin」という名前のユーザーによって作成されたすべての記事と一致して検索されますが、「Test」という名前の記事(存在する)を検索すると一致しません。

0 投票する
1 に答える
702 参照

mysql - mysql マッチのように動作する PHP 正規表現

mysql Match Against 動作に似た文字列を比較する PHP 正規表現が必要です。

例えば:

このパターンは文字列に一致するはずです

どうもありがとう

0 投票する
1 に答える
149 参照

mysql - データが異なる 2 つ以上のテーブルでの全文検索

こんにちは、私はこのSQL文を持っています

1) ジョイントスコアで注文するにはどうすればよいですか? つまり、この sql ステートメントでは、最初の一致のスコアと 2 番目の一致のスコアが作成されます。これら 2 つのスコアを加算して、そのスコアで並べ替えるにはどうすればよいですか?

2)また、データが同じではないため、INNER JOINの方法が最適ではないこともわかっています。とにかく私はそれを取り除くことができますか?

そして最後に、たとえばsimを使用し、first_name が simos のときに IN BOOLEAN MODE を削除すると、結果が得られません。実際、ブールモードで空の結果セットを取得すると、simを入力すると結果として simos が取得されます。

編集:これを行うことで2番目の質問に答えました

ユニオン (SELECT groupid, MATCH(グループ名) AGAINST ('? ') AS スコア FROM groupsWHERE MATCH(グループ名) AGAINST ('? ') )

ただし、これはすべてを変更しますが、共同スコアは必要ありませんが、IN BOOLEAN MODE に問題があるためです。

0 投票する
1 に答える
422 参照

mysql - MySQL MATCH AGAINST の効率

私は小規模な PHP 記事システムを使用しており、各記事に類似記事リストを追加したいと考えています (これは明らかに非常に頻繁に読み込まれます)。
記事のタイトルに基づいて、同様の記事のリストを作成するには、MATCH AGAINST を使用する必要があると考えました。
問題は、実際にそれを実装するにはどうすればよいかということです。
記事の各ビューで MATCH AGAINST クエリを実行するのは負荷が高すぎますか?それとも問題ありませんか? 集中的すぎる
場合、代替手段は何ですか?

ありがとう。

0 投票する
3 に答える
946 参照

mysql - SQL MATCH AGAINST BOOLEAN MODE が 0 の結果を返す

これはクエリです:

テーブルには間違いなくデータが入力されており、ここにスキーマがあります

また試しました:

しかし、それらは自分自身をキャンセルするようなもので、結果の一部は次のとおりです。

これはまさに私が望んでいないものです

また、タイトル フィールドには FULLTEXT インデックスがあります。

ありがとう

ダレン

0 投票する
2 に答える
656 参照

mysql - Propel (ORM) で match against ステートメントを使用する方法はありますか?

Propel (ORM) で match against ステートメントを使用する方法はありますか? これに関連するものが見つからないのは奇妙です。

0 投票する
1 に答える
1823 参照

php - PHP と MySQL を使用してタグベースの関連リンク機能を作成する

ユーザーが MySQL データベースを使用してコンテンツを作成、投稿、および表示できる PHP ベースのシステムを開発しています。各コンテンツはテーブル行に格納されます。ユーザーがコンテンツを投稿すると、PHP スクリプトが一般的な単語またはタグを抽出し (「and」や「or」などのストップ ワードを削除)、出現順に並べ替え、データベース内の配列としてすべて保存します。

各コンテンツと生成されたタグを表示するだけでなく、表示されているコンテンツに 1 つ以上のタグが付けられた類似の投稿コンテンツ (YouTube の関連動画または関連ストーリーに似ている) のリストを表示する機能が欲しいニュースサイト)。さらに、各コンテンツのタグの数に基づいてリストを並べ替えたいと思います。

私はいくつかの調査を行い、タグが存在するかどうかに基づいてデータベース内から行を選択できる 2 つの異なるスクリプトを開発しました。ただし、どちらのスクリプトにも問題があります。

最初に試したのは LIKE クエリでした。

このクエリの問題は、結果が順序付けされていないことです。次に、MATCH AGAINST クエリを試しました。

結果は関連性によって並べ替えられますが、すべてのタグが存在する行のみが取得され、その行にタグが 1 つでも欠けている場合、その行はクエリによって取得されません。

私が望むのは、両方の機能の長所を組み合わせ、1 つ以上のタグを含む行を選択し、存在するタグの数に基づいてそれらを並べ替えることです。例えば; 行 1 に 10 個のタグが含まれ、行 2 に 20 個のタグがあり、行 1 に 9 個のタグが見つかり、行 3 に 50 個のタグがあり、行 1 に 8 個のタグが見つかった場合、行 2 と行 3 の両方が取得され、行 2 は行 3 より関連性が高くなります。

どんな助けでもいただければ幸いです

0 投票する
1 に答える
1435 参照

mysql - MySQLはパーセント文字を含む文字列と一致します

パーセント記号を含むdb行の値を見つけようとしています。

たとえば、「10%削減された」行の値があります。

「10」だけでなく、「10%」を含む結果をフィルタリングする必要があります。

私はしようとしていました

しかし、それは「10」ですべての結果を返しました。

何か案は?