sql >> Database >  >> RDS >> Mysql

Hoe te matchen en sorteren op gelijkenis in MySQL?

Ik weet niet zeker of LIKE is de juiste manier om dit te doen. Als u in uw tekst naar trefwoorden moet zoeken en de resultaten moet sorteren op relevantiescore, moet u MySQL Full-Text index en MySQL Full-text zoekfuncties . Sorry als dit je afleidt van wat je eigenlijk probeert te doen, maar ik raad je aan er eens naar te kijken. Enkele citaten uit de MySQL-referentiehandleiding:

1) Hoe maak je een volledige tekstindex aan op meerdere kolommen van een tabel

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

2) Voorbeeldgegevens

3) Voorbeeldquery die meerdere kolommen doorzoekt op trefwoorden en het resultaat + de score weergeeft:




  1. Hoe mysql JOIN te gebruiken zonder ON-voorwaarde?

  2. MySQL selecteer na rij op specifieke regels

  3. Varchar- of tekstgegevenstypen voor strings met een lengte tot enkele duizenden tekens

  4. groeperen op maand van Unix-tijdstempelveld