ورود

View Full Version : جستجوی در بین کلمات و اعداد



mohammad-gh
یک شنبه 13 شهریور 1390, 12:25 عصر
با سلام
فرض کنیم تیبل افرادی را داریم که دارای دو فیلد زیر در دیتابیس هستند
یکی از فیلدها فقط یک مقدار می گیرد مانند:


$f1=2

فیلد بعدی می تواند یک سری از اعداد را بگیرد مانند:


$f2=1234

چطور می توانیم دستور جستجویی بنویسم که افرادی را پیدا کند که فیلد f1 انها یکی از اعداد f2 باشد
فیلدها به صورت رشته و عدد می توانند ذخیره شوند
از دستور like استفاده کردم اما درست نشون نمیده


$result = mysql_query("SELECT * FROM user where f1 like '%$f2%' ") or die(mysql_error());

mohammad-gh
یک شنبه 13 شهریور 1390, 18:30 عصر
کسی نیست به ما جواب بده
من بدجور لنگ این کارم

bigtime
دوشنبه 14 شهریور 1390, 13:40 عصر
با سلام
اقا شما باید ستون دوم رو به صورت set تعریف کنی و query تون هم به صورت زیر در میاد:
select *from tbl_name where f2 like '%f1%';q
یا select *from tbl_name where find_in_set('value','set_col');q
دستورهای بالا مثل هم عمل می کنن.q اضافی هستش.

anouri
سه شنبه 05 مهر 1390, 00:51 صبح
نیاز به set نداری
select * from tbl_name
where instr(f2,f1)>0

همین
البته چون خودت گفتی طول f1 همیشه یکی هست این درسته
به هر حال وقتی f1 داخل f2 باشه این گوئری درسته