Yazeka
Arama sonuçlarına göre oluşturuldu
MySQL'de SQL kullanarak tam metin arama yapmak için aşağıdaki adımları izlemek gerekmektedir:
- Fulltext İndeksi Oluşturma: Arama yapılacak sütunlara
FULLTEXT
indeksi eklenmelidir 12. Bu,CREATE TABLE
veyaALTER TABLE
ifadeleri ile yapılabilir 2:
CREATE TABLE makaleler(content TEXT, FULLTEXT (content)); ALTER TABLE makaleler ADD FULLTEXT (content);
- Arama Sorgusu: Tam metin arama için
WHERE
cümlesi ile birlikteMATCH AGAINST
ifadesi kullanılır 12. Arama yapılacak sütunlar ve sorgu belirtilmelidir 2:
SELECT * FROM makaleler WHERE MATCH (content) AGAINST ('database engine' IN NATURAL LANGUAGE MODE);
Burada
IN NATURAL LANGUAGE MODEifadesi, arama sorgusunun doğal dil anlayışına dayalı olarak gerçekleştirileceğini belirtir 1.
- Sonuçların Sıralanması: Tam metin arama sonuçları,
MATCH ... AGAINST
ifadesinin bir parçası olarakORDER BY
cümlesi ile alaka düzeyine göre sıralanabilir 2. Bu,relevance
adlı sanal bir sütun döndürür ve 0 ile 1 arasında bir değer içerir 2:
SELECT content, MATCH (content) AGAINST ('database engine') AS relevance FROM makaleler ORDER BY relevance DESC;
5 kaynaktan alınan bilgiyle göre: