MySQL Match Against&Like

user3243925

私はこの方法でフルテキストインデックスを作成しました:

CREATE FULLTEXT INDEX filter_index
ON posts (filter)

そして、検索のための私のコードは現在これです:

SELECT * FROM posts
WHERE MATCH(filter) AGAINST (?)

クエリはOKを実行し、私のテーブルには次の構造があります。

ID | name   | from           | filter
 1   John     Paris - France | John Paris France
 2   Carey    Paris - France | Carey Paris France
 3   Maria    France - Vion  | Maria France Vion
 4   Alfredo  US New York    | Alfredo US New York
 5   JohnD    Colombia       | JohnD Colombia

次のクエリを実行すると、次のようになります。

SELECT * FROM posts
    WHERE MATCH(filter) AGAINST ('France Vion')

これにより、最初に結果が得られますJohn Paris France & Carey Paris Franceその後、Maria France Vion

これは違うべきではありませんか?最初にMaria France Vionそしてその後になって初めて他の人が結果を出しますか?

この操作を最適化するにはどうすればよいですか?

エルゲック

これを試して

SELECT *, MATCH(filter) AGAINST('France Vion' IN BOOLEAN MODE) as relevance
FROM posts_locale 
WHERE MATCH(filter) AGAINST('France Vion' IN BOOLEAN MODE) 
ORDER BY relevance DESC

また、2つの異なるフィールドを検索して、優先順位を付けたい場合。検索from同様filterですが、from提出されたものを優先します

SELECT *, 
MATCH(filter) AGAINST('France Vion' IN BOOLEAN MODE) as relevance,
MATCH(`from`) AGAINST('France Vion' IN BOOLEAN MODE) as relevance_from
FROM posts 
WHERE MATCH(`from`, filter) AGAINST('France Vion' IN BOOLEAN MODE) 
ORDER BY (relevance_from * 2) + relevance DESC

ここの2番目(2)はORDER BY (relevance_from * 2) + relevance DESC、優先順位を2倍にします。場合によっては、これは高くなる可能性があります。あなたは1.5以下のようなものを試すことができます

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

MySQL MATCH AGAINST with JOIN

分類Dev

MySQLのmatch().... Against()と数字

分類Dev

Mysql LIKE Order Bu Exact Match

分類Dev

MySQL MATCH AGAINST3文字式

分類Dev

MySQL Match()Against()大文字と小文字を区別

分類Dev

MySQL match and insert functions

分類Dev

Partial match in excel, multiple values in match criteria to match against list

分類Dev

php mysqlでMATCH()AGAINST()を使用中にエラーが発生しました

分類Dev

MATCH AGAINSTでORを使用するMySQLは、クエリを大幅に遅くします

分類Dev

Javascript RegEx to Match Against a String

分類Dev

Read lines and match against pattern

分類Dev

How to match two table in mysql

分類Dev

CONTAINS(Oracle)とMATCH(MySql)

分類Dev

PowerShell -match vs -like

分類Dev

SQL String match with Like

分類Dev

Match against variables (or otherwise introduce abstraction for match logic)

分類Dev

MATCHおよびAGAINSTを使用したmysqlクエリで全文検索を使用できません

分類Dev

How to match a string against an array of pattern in Javascript?

分類Dev

match vector against dataframe with multiple entries in R

分類Dev

Haskell won't match against a list

分類Dev

PHP & MYSQL, update record that is an exact match

分類Dev

How to forbid inserting in mysql if not match a regular expression?

分類Dev

MySQL LIKE IN()?

分類Dev

MATCH AGAINSTがLIKEとは異なる結果を返すのはなぜですか?

分類Dev

MySQLで「どこでMATCH AGAINSTとDATETIME」検索を高速化するにはどうすればよいですか?

分類Dev

Mongodb\BSON\Regex Php: Perform Like Match

分類Dev

Use like '%' and match NULL values with NUMBER columns

分類Dev

Google Sheets Query - Not like partial match

分類Dev

TypeScript pattern match against a string or Blob (type union = string | Blob)

Related 関連記事

  1. 1

    MySQL MATCH AGAINST with JOIN

  2. 2

    MySQLのmatch().... Against()と数字

  3. 3

    Mysql LIKE Order Bu Exact Match

  4. 4

    MySQL MATCH AGAINST3文字式

  5. 5

    MySQL Match()Against()大文字と小文字を区別

  6. 6

    MySQL match and insert functions

  7. 7

    Partial match in excel, multiple values in match criteria to match against list

  8. 8

    php mysqlでMATCH()AGAINST()を使用中にエラーが発生しました

  9. 9

    MATCH AGAINSTでORを使用するMySQLは、クエリを大幅に遅くします

  10. 10

    Javascript RegEx to Match Against a String

  11. 11

    Read lines and match against pattern

  12. 12

    How to match two table in mysql

  13. 13

    CONTAINS(Oracle)とMATCH(MySql)

  14. 14

    PowerShell -match vs -like

  15. 15

    SQL String match with Like

  16. 16

    Match against variables (or otherwise introduce abstraction for match logic)

  17. 17

    MATCHおよびAGAINSTを使用したmysqlクエリで全文検索を使用できません

  18. 18

    How to match a string against an array of pattern in Javascript?

  19. 19

    match vector against dataframe with multiple entries in R

  20. 20

    Haskell won't match against a list

  21. 21

    PHP & MYSQL, update record that is an exact match

  22. 22

    How to forbid inserting in mysql if not match a regular expression?

  23. 23

    MySQL LIKE IN()?

  24. 24

    MATCH AGAINSTがLIKEとは異なる結果を返すのはなぜですか?

  25. 25

    MySQLで「どこでMATCH AGAINSTとDATETIME」検索を高速化するにはどうすればよいですか?

  26. 26

    Mongodb\BSON\Regex Php: Perform Like Match

  27. 27

    Use like '%' and match NULL values with NUMBER columns

  28. 28

    Google Sheets Query - Not like partial match

  29. 29

    TypeScript pattern match against a string or Blob (type union = string | Blob)

ホットタグ

アーカイブ