• 07-09-2008, 18:58:11
    #1
    Merhaba,

    Şöyle bir sorunum var; mesela ziyaretçi etiketler de arama yapıyor "r10 webmaster forumu", ancak etiketler içerisinde "r10 webmaster forumu" diye bir etiket yok ve arama sonucun da boş sayfa gözüküyor ama etiketler "webmaster forumu" var. "r10 webmaster forumu" diye aratıldığında "webmaster forumu" etiketli veriyi arama sonucunda göstermek için nasıl bir yol izleyebilirim, beni bilgilendirirseniz sevinirim.

    İyi çalışmalar.
  • 08-09-2008, 12:57:32
    #2
    O mantıksal aramaya girer. Onun için hesaplamalar, eşitlemeler yapman lazım.

    r10 diye arayınca webmaster forumunu eklersin
    coder diye arayınca maniakcoder'ı eklersin
    ..

    Ucu bucağı gelmez
  • 10-09-2008, 18:24:32
    #3
    sonuç bulunamazsa kelimeleri bölersin bölünmüş kelimelerde ararsın, kelimeleri, kelime sayısına göre bölüp, birleştirip aratırsın..

    Örnek;

    roberto carlos fenere transfer oldu
    sonuç yok ise

    roberto transfer oldu
    roberto fenere transfer oldu
    carlos transfer oldu
    roberto carlos
    gibi kelimeleri birleştirir, veya tek tek aratırsın.

    İyi Çalışmalar...
  • 11-09-2008, 21:13:16
    #4
    cortes adlı üyeden alıntı: mesajı görüntüle
    sonuç bulunamazsa kelimeleri bölersin bölünmüş kelimelerde ararsın, kelimeleri, kelime sayısına göre bölüp, birleştirip aratırsın..
    Örnek;
    roberto carlos fenere transfer oldu
    sonuç yok ise
    roberto transfer oldu
    roberto fenere transfer oldu
    carlos transfer oldu
    roberto carlos
    gibi kelimeleri birleştirir, veya tek tek aratırsın.
    İyi Çalışmalar...
    tek aramada 50 tane query çalıştır sonra sql server'dan ertesi gün cevap alırsın

    arkadaşım arama sistemlerindeki en önemli unsur indexing olayını ilk başta oturtmaktır ararken değil yani nasıl diyiceksin

    sen forum başlığındaki her kelimeyi ayrı ayrı "tag" tablosuna kaydetmen daha sonra bunları baş hafre göre index ettirmen gerekli. aramanıda cümle cümle alıp tek sorguya yerleştiriceksin örnek olarak;

    SELECT forumtopic FROM tblForumTag WHERE tag='roberto' OR tag='carlos' OR ...

    diye gider gelen sonuçta birbiri ile ilişkili en çok sonuç getiren tabloda aradığımız şeyden en çok vardır. "GROUP BY" kullanarak hangi tablonun kaç sonuç verdiğini analrsın onu başa alırsın. umarım anlatabilmişimdir.
  • 12-09-2008, 00:26:57
    #5
    gelen veriyi bölüp tek tek aramak yorar sunucuyu gereksiz olur. @irhz doğru soyluyor baştan oturtmak gerek.
    alternatif yazdıgın yazılara etiket sistemi ekle ister etiket bulutu yap ister aramaları etiketlerde ara daha kullanışlı olur.
  • 12-09-2008, 17:45:37
    #6
    arkadaşım bende biliyorum tek tek yorar fakat benim tek tek den kastım hepsi için ayrı sql değil. @irhz verdiğin örnekteki gibi
    roberto carlos fenere transfer oldu
    sonuç yok ise
    roberto transfer oldu
    roberto fenere transfer oldu
    carlos transfer oldu
    roberto carlos

    bunları or ile ayırarak aynı sqlde aramak.Tek tekden kastıma gelincede yani
    roberto
    carlos
    fenere
    transfer
    oldu
    gibi...

    Bilmem anlatabildim mi???

    İyi Çalışmalar..