-
Üyelik
15.02.2017
-
Yaş/Cinsiyet
27 / E
-
Meslek
Girişimci ve İçerik Üreticisi
-
Konum
Aydın
-
Ad Soyad
U** K**
-
Mesajlar
540
-
Beğeniler
109 / 118
-
Ticaret
0, (%0)
Merhaba mysql de benzerlik listesi yapıyorum.
Şimdi tablonun adı "benzerlik". Sütunlar "id, benzer_yazi, benzer_kadi"
Örnek tablo:
--
"1", "yeşil ali ata bak", "mehmet"
"2","elma armut şeftali","mehmet"
"3","kırmızı mavi yeşil","ali"
"4","üzüm şeftali","ayse"
"5","plastik dandini dandini dastana","ismail"
"6","egzoz esrar kömür plastik","ayse"
--
Örneğin "mehmet" isimli kişinin 2 verisi var. Bunlar "yeşil ali ata bak" ve "elma armut şeftali" dır. Bu cümlelerin içinde "yeşil" ve "şeftali" diğer verilerle aynı.
Şöyle çalışacak "mehmet" 2 verisindeki kelimeler diğer verilerdeki verilerle benzerse onları listeleyecek.
Mehmet:
"1", "yeşil ali ata bak", "mehmet"
"2","elma armut şeftali","mehmet"
Liste:
"3","kırmızı mavi yeşil","ali"
"4","üzüm şeftali","ayse
gibi.
Neler yaptım?
1. MYSQL LIKE
2. SOUNDS LIKE
Ancak istediğim sonucu elde edemedim.
Nasıl yapabilirim?
Baştan Sona PHP Eğitimi ➡ youtu.be/TQP8jBwnXw4
-
Üyelik
29.10.2016
-
Yaş/Cinsiyet
33 / E
-
Meslek
Öğretmen
-
Konum
Konya
-
Ad Soyad
O** K**
-
Mesajlar
1116
-
Beğeniler
499 / 498
-
Ticaret
16, (%100)
distinct kullanımını araştırın hocam.
-
Üyelik
15.02.2017
-
Yaş/Cinsiyet
27 / E
-
Meslek
Girişimci ve İçerik Üreticisi
-
Konum
Aydın
-
Ad Soyad
U** K**
-
Mesajlar
540
-
Beğeniler
109 / 118
-
Ticaret
0, (%0)
hsntngr adlı üyeden alıntı
Hocam güzel düşünmüşsünüz ancak şöyle bir sıkıntı var.
Bildiğim kadarıyla MYSQL de pratik olarak kullanabileceğiniz bir string parçalama işlemi yok. Yani cümlenin kelimelerine parçalayıp, bunları tek bir sorguda diğer kayıtlarda aratamazsınız.
bana makul gelen iki çözüm yolu var.
İlk sorguda mehmete ait verileri çekmek, bu verilerden bir array oluşturmak daha sonrada bu array elemanlarını kullanıp bir LIKE sorgusu olusturmak.
ikinci yol ise (bunu tek sorguda oluşturabilirsiniz.) mehmetin sevdiği şeyleri tek tek kaydetmek.
Daha sonra mehmetin sevdiği şeyleri diğer satırlarda aratmak. Ve bu kullanıcılara ulaşmak.
DB FİDDLE ÖRNEĞİ :
https://www.db-fiddle.com/f/hFnh4WbXSMpAvnLTFgAsCo/0
İlk söylediğim şeyi yapabilmeniz için, işin içine php giriyor. (Veya hangi dili kullanıyorsanız.) İlk veriyi çeker, parçalar bu parçalardan bir LIKE sorgusu olusturup aradıklarınızı bulursunuz :)
Benim aklıma gelen çözüm yöntemleri bunlar.
bugün ilk söylediğiniz aklıma geldi onun üzerinde çalışıyorum. :)
Baştan Sona PHP Eğitimi ➡ youtu.be/TQP8jBwnXw4