• 21-01-2021, 12:21:28
    #1
    arkadaşlar selamlar.
    şimdi bir SQL like parametresi var;

    SELECT code FROM `urun` WHERE code LIKE concat('%W 79%')
    olarak W 79 yazınca gidiyor W 79 olan ürünü buluyor fakat bu ürünü aynı şekilde

    SELECT code FROM `urun` WHERE code LIKE concat('%W79%') olarak aratıldığında bulunması lazım yani boşluk duyarlığını kaldırmam lazım oradan.


    yardımcı olabilecek var mı ?
    tşk.
  • 21-01-2021, 12:24:17
    #2
    REPLACE ile yapabilirsiniz
  • 21-01-2021, 12:28:25
    #3
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Bir sonraki aşaması bunun full text search olacaktır hocam. REPLACE ile ilgili sütunu replace edersin ama veri sayısı çoğaldıkta query yavaşlamaya başlar. Önemsenmeyecek düzeyde veriniz var ise farklı ihtimalleri queryde işleyebilirsiniz.
  • 21-01-2021, 12:30:44
    #4
    ByNF adlı üyeden alıntı: mesajı görüntüle
    Bir sonraki aşaması bunun full text search olacaktır hocam. REPLACE ile ilgili sütunu replace edersin ama veri sayısı çoğaldıkta query yavaşlamaya başlar. Önemsenmeyecek düzeyde veriniz var ise farklı ihtimalleri queryde işleyebilirsiniz.
    Örnek verir misin hocam..
  • 21-01-2021, 12:31:05
    #5
    hesapadim adlı üyeden alıntı: mesajı görüntüle
    REPLACE ile yapabilirsiniz
    Biraz daha açıklar mısınız hocam
  • 21-01-2021, 12:32:44
    #6
    chnyrdkl adlı üyeden alıntı: mesajı görüntüle
    Biraz daha açıklar mısınız hocam
    SELECT code FROM `urun` WHERE REPLACE(code, ' ', '') LIKE concat('%W79%')
    deneyiniz
  • 21-01-2021, 12:56:33
    #7
    <?php
    $term = trim(str_replace(' ', '', mb_strtolower($_GET['term'])));
    $sql = "SELECT * FROM urunler WHERE REPLACE(LOWER(REPLACE(code, 'I', 'ı')), ' ', '') LIKE '%{$term}%'";
    hesapadim adlı üyeden alıntı: mesajı görüntüle
    SELECT code FROM `urun` WHERE REPLACE(code, ' ', '') LIKE concat('%W79%')
    deneyiniz
  • 21-01-2021, 13:04:50
    #8
    G3da adlı üyeden alıntı: mesajı görüntüle
    <?php
    $term = trim(str_replace(' ', '', mb_strtolower($_GET['term'])));
    $sql = "SELECT * FROM urunler WHERE REPLACE(LOWER(REPLACE(code, 'I', 'ı')), ' ', '') LIKE '%{$term}%'";
    Şuan W 77 yazınca W77 i bulabiliyorum. Fakat W 79 yazınca W 79 u bulamıyorum girdide tüm boşlukları sildiği için diğer aramalar gitti.
  • 21-01-2021, 13:10:14
    #9



    chnyrdkl adlı üyeden alıntı: mesajı görüntüle
    Şuan W 77 yazınca W77 i bulabiliyorum. Fakat W 79 yazınca W 79 u bulamıyorum girdide tüm boşlukları sildiği için diğer aramalar gitti.