جستجوی چندگانه و همزمان در دیتابیس
سلام خدمت مدیر و همکارانشون که به سوالات پاسخ می دن یا راهنمایی می کنن.
سوال من این هست که می خواهم دو جستجوی پشت سر هم در یک پی اچ پی کد نویسی کنم و همزمان در یک تیبل چهار ستونی جستجو انجام بدم. این چار ستون شامل
نام. نام خانوادگی. نام پدر. نام شهر
هستند. من در جستجوی اول
select name,family,city,father from tbl where name like ‘edittext’ “;
و می خوام بلافاصله با ردیف کردن نتایج، پشت سرش یک جستجوی دیگه انجام بدهد و هر نام خانوادگی که همانند یا شبیه با نام هستند را هم در همان لیست ویو نمایش دهد. مثلا اگر ده تا محمد در ستون نام هست را به همراه فامیل و شهرشان نمایش دهد. بلافاظه کسانی که نام خانودگی شبیه محمد یا شامل محمد است راه هم به همراه نام و شهرشان نمایش دهد.
کد آن این است
select family,name,city,father from tbl where family like ‘edittext’;
من نمی دانم که در پی اچ پی چطور باید این دو جستجو را پشت سر هم بنویسم.
منظور از ادیت تکست اینجا کلمه ای است که در سمت بیسیک وارد شده و به سمت سرور فرستاده شده.
سوال اصلی این است که بین این دو خط کد چه کلمه یا دستوری باید نوشت که این دو سرچ با یک کلیک انجام شود و نمایش در لیست ویو ظاهر شود.
در بیسیک ، در دیتابیس افلاین بنده این را به این شکل انجام داده ام و نتیجه گرفته ام.
پاسخ ها ( 1 )
سلام جلال جان
تو کوئری select که انجام میدیم توسط کلمه OR میتونیم چند تا شرط رو با هم بررسی کنیم، همون کدهای PHP که داری رو کافیه به این شکل تعریف کنی:
به کمک OR میتونیم چند شرط رو با هم اعمال کنیم؛ الان تو کوئری بالا؛ همزمان هم تو فیلد name و هم تو lastname جستجو میکنه و نتایج رو نشون میده.
البته دو تا کوئری جداگانه هم میشه نوشت که بعد نتایج رو با هم ادغام کرد، ولی اصلا بهینه نیست و روی سرور فشار میاره.
موفق باشید.
سلام و ممنون
اما خواهش می کنم دقت کنید سرچ اول توی ستون نام هست و سرچ دوم توی ستون فامیل
اینی که شما نوشتید هر دو تاش توی یک ستون نام انجام میشه. خواهش می کنم برای سرچ توی دو تا ستون به من کد بدید.
خواهشا دوباره لطف کنید راهنمایی کنید.
این کوئری که من نوشتم هم دوست عزیز، توی ستون نام و فامیل جستجو میکنه(توی یک ستون نیست)
توی ستون name و lastname جستجو میکنه و مقادیر مشابه رو نشون میده
مگه شما نمیخواید توی دو ستون همزمان جستجو انجام بشه؟ این کوئری که نوشتم همینکارو میکنه