match ord i flere tabeller
Hej eksperterJeg har to tabeller.
TABEL1:ID og Tekst
TABEL2:Tekst
Er det muligt at lave en query der viser følgende
1. ID
2. Score
Hvor score angiver hvor mange ord (ikke gengivelser) der matcher i tabel 1 tekst og tabel 2 tekst.
Eksempelvis
Tabel 1
ID 1 - Tekst: hund mus kat kylling mus hund tog
ID 2 - Tekst: hund peter ole
ID 3 - Tekst: fisk hundemad
Tabel 2 Tekst: hund mus
Skal give:
ID 1 - Score: 2
ID 2 - Score: 1
ID 3 - Score: 0
Har i anden sammenhæng med et andet spg. Fået følgende mulighed fra en venlig sjæl:
SELECT tt.*, COUNT(ord) as antal FROM tabel as tt
LEFT JOIN ordtabel AS to ON IF (LOCATE(to.ord, tt.tekst) > 0, TRUE, FALSE)
GROUP BY id
Den virker egentlig okay dog er der følgende problemer:
Hvis der ikke er ord der matcher giver den 1point og ikke 0. Så kan ikke gennemskue om den har ramt 1 ord eller ingen
Den leder også i hele ord - f.eks hund rammer hundemad.
Nogle der forstod :) som kan måske hjælpe...