PDA

View Full Version : سوال: مشکل دستور Like در MySql جستجو در بی تفاوت بین (چ) و (ن)



itg.siemens
سه شنبه 04 اسفند 1394, 14:29 عصر
سلام
اگر لطفا کنید راهنمایی کنید ممنون میشوم.
با phpحرف -چ- در پایگاه داده MySql را جستجو می کنم با دستور لایک نتیجه اش غیر حرف -چ- را حرف -ن- رو میاره
company LIKE '%$value%'
برای مثالی وقتی چای جستجو می کنی
کلمات شامل نای رو ... را هم میاره
یا حتی صنایع که شامل نای هست.
و برعکسش هم رو تست کردم -- نایی -- رو جستجوی میکنم --چایی-- رو هم میاره. یا فرقی نمیکنه -زندان- جستجو کنی یا -زچدان- هر دو حالت همدیگر رو میارن
Collation جدول و فیلد رو هم هرچی بگین گذاشتم و تست کردم نشد
اعم از نوع های
utf8_general_ci
utf8_persian_ci
utf8_unicode_ci
utf8mb4_general_ci
utf8mb4_persian_ci
utf8mb4_unicode_ci
تست شد و فیلد از نوع VARCHAR و فاقد fulltext و اینکس می باشد.
نسخه مای اس کیو ال هاستم به شرح ذیل می باشد:
Server version: 5.5.45
Database client version: libmysql - 5.1.73

itg.siemens
دوشنبه 17 اسفند 1394, 11:25 صبح
یعنی یک نفر نیست که با این مشکل دست و پنجه نرم کرده باشه؟!!
مهم نیست ما توی این 10 سالی که داشتیم کار میکردیم با روش utf8-bin کار میکردیم ، چنین مشکلی نداشتیم ، از این به بعد هم با همون روش ادامه میدیم، فقط تنها نقطه ضعفش اینه که بین حروف کوچک و بزرگ تفاوت قائل میشه.
به همه هم پیشنهاد میکنم دنبال هیچ کدوم از Collation ها دیگه نرند، هیچ چیزی دقیق تر از باینری نیست.
یاحق

a_saeedsg
شنبه 04 دی 1395, 21:57 عصر
بجای like کافیه = بذاری