Mysql
 sql >> Database >  >> RDS >> Mysql

Come abbinare e ordinare per somiglianza in MySQL?

Non sono sicuro se LIKE è il modo giusto per farlo. Se è necessario cercare all'interno del testo parole chiave e ordinare i risultati in base al punteggio di pertinenza, utilizzare Indice MySQL Full-Text e Funzioni di ricerca full-text di MySQL . Scusa se questo ti allontana da ciò che stai effettivamente cercando di fare, ma ti consiglio di dargli un'occhiata. Alcune citazioni dal manuale di riferimento di MySQL:

1) Come creare un indice di testo completo su più colonne di una tabella

mysql> CREATE TABLE articles (
    ->   id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
    ->   title VARCHAR(200),
    ->   body TEXT,
    ->   FULLTEXT (title,body)
    -> );

2) Dati campione

3) Query di esempio che ricerca più colonne per parole chiave e visualizza il risultato + il punteggio: