• 28-09-2018, 19:01:59
    #1
    Arkadaşlar arama konusunda yardıma ihtiyacım var. İnternetten araştırıp çok komut denedim ama istediğim sonucu hiç alamadım.

    Şu an LIKE '%$aranacak sözcük%' komutuyla aranacak sözcük ya da sözcükleri full text olarak arayıp bulup listeliyorum. Ancak istediğim şu ; mesela başlığım Türkiye'nin en güzel şehri Sinop ilidir. Arama sözcüklerimiz de Türkiye Sinop olsun. Şu an ki sistemde bu başlığı bulamıyoruz. Sadece aradığımız sözcükler yan yana dizilmişse çıkıyor. Ancak şu da olmayacak, aradığımız sözcükler Türkiye ve Sinop, başlığında tek Türkiye varsa o başlığı bulmasın , 2 sözcükte geçecek ama sıralaması yan yana olmasa bile bulması gerekiyor.

    Önceki yıllardan hatırladığım kadarıyla 2 sözcüğü aratıp her sözcüğün geçtiği başlıkları listeletmiştim, ama işte benim istediğim ikisinin de başlıkta olması ama yan yana olmasına gerek yok, inşallah derdimi anlatabilmişimdir
    Yardımcı olacak arkadaşa şimdiden çok teşekkürler.
  • 28-09-2018, 19:05:35
    #2
    Where clause'da birden fazla koşul ile filtreleme yapabilirsin.

    bu bunu içersin ve bu da bunu içersin mantığı..

    cevap basit zaten yazmayayim sen bulursun
  • 28-09-2018, 19:08:08
    #3
    Üyeliği durduruldu
    Dediğinizi anlatabildiniz 😂 Ancak nasıl yapılacağını bilmiyorum. Bilen arkadaşlar yardımcı olacak. Yani Türkiye sinop diye aratınca Türkiyenin en güzel ili Sinop çıkacak. Ancak Türkiye Sinop aratınca Türkiye güzel bir yerdir, başlığı çıkmayacak.
  • 28-09-2018, 19:12:16
    #4
    Shydox adlı üyeden alıntı: mesajı görüntüle
    Dediğinizi anlatabildiniz 😂 Ancak nasıl yapılacağını bilmiyorum. Bilen arkadaşlar yardımcı olacak. Yani Türkiye sinop diye aratınca Türkiyenin en güzel ili Sinop çıkacak. Ancak Türkiye Sinop aratınca Türkiye güzel bir yerdir, başlığı çıkmayacak.
    Ya çok kod denemiştim bir zamanlar da pes edip bırakmıştım Türkiye Sinop aratınca içinde sadece Türkiye geçse listeleniyordu da bu işime gelmedi, ikisinin de geçmesi lazım ama ister yan yana ister üst üste işte

    Üstteki arkadaşın bahsettiği Where clause olayını bir araştırayım bakalım, becerebilecek miyiz..
  • 28-09-2018, 19:26:37
    #5
    xxx Like '%birincikelime%' and xxx like '%ikincikelime%'

    şeklinde yapabilirsin.

    Kelimeyi ayırmadan yapmak istemiyorsan regexp kullanabilirsin.
  • 29-09-2018, 18:49:09
    #6
    fınd_ın_set(? , tablo ) doğru bir arama için fınd_ın_set fonksiyonunu kullan
  • 09-10-2018, 21:43:11
    #7
    Yaklaşık 10 günlük uğraşıların sonucunda istediğim gibi bir şey oldu. Veritabanında arama yapılacak sütunların yapısını fulltext index olarak güncelledim. Arama sorgumuza da where MATCH(baslik,yazi) AGAINST ('aranan_kelime') yazdık, sonuç olarak önce aranan kelimelerin tümü ya da tekrarlı geçen sözcüklerin linklerini üste aldı, sonrasında da aranan sözcüklerin en az biri geçen sözcüğün linklerini listeye dahil etti. Güzelmiş güzel
  • 10-10-2018, 02:22:56
    #8
    Bu tip işlemler için hem hız hemde işlevsellik açısından nodejs kullanmanızı öneririm. Deneyin, pişman olmayacaksınız