-
حلقه (تکرار) و نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
سلام ربات تلگرامی دارم که
در خصوص نمایش اطلاعات تیبل دوم
سوال داشتم
در رکورد تیبل 1 چندین رکورد در تیبل دوم وجود دارد
با استفاده از دستور JOINنتونستم به نتیجه برسم و در دستور SELECT پست های ارسالی به تعداد رکورد تیبل 2 تکرار میشه
لطفا راهنماایی کنید چطوری تمام نتایج تیبل 2 رو درون نتیجه جستجو و در یک پست ارسال کنم
امیدوارم متوجه منظورم شده باشد
مثال :
کد:
$connection = connect_to_db();
$result = $connection -> query("SELECT *
FROM TBL_1
LEFT JOIN TBL_2
ON TBL_1.id1=TBL_2.id2
WHERE TBL_1.name Like '%$text%'
limit 20 ");
if ($result) {
while($row = $result -> fetch_assoc()) {
$id1 = $row['id1'];
$name = $row['name'];
i
$kharid = $row['kharid'];
$reply ="$id1 $name $kharid ";
$url = $GLOBALS['bot_url']."/sendMessage";
$post_params = [ 'chat_id' => $GLOBALS['chat_id'] , 'text' => $reply , 'parse_mode' => 'Markdown' ];
send_reply($url, $post_params);
}
}
$connection -> close();
ویرایش توسط amin8520 : May 22nd, 2019 در ساعت 04:32
-
-
May 19th, 2019 23:07
# ADS
-
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
مثال :
TBL_1
id1
|
name
|
1
|
محمد
|
2
|
حسین
|
3 |
محمد علی |
TBL_2
با جستجو کلمه علی
میخوام علی و خریدش
و محمد علی با خریدش در دو پست مجزا نمایش داده بشه هر کدئم با خرید های خودشون
محمد کفش - جوراب - تی شرت – ریش تراش – شلوار - موبایل |
محمد علی
پیراهن – مسواک .
|
لطفا راهنمایی کنید / ممنون
ویرایش توسط amin8520 : May 22nd, 2019 در ساعت 04:30
-
-
عضو انجمن
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
باید از group by استفاده کنید
اسکریپت فروش اکانت دیجیتالی IBSmng. اپل آیدی ٫ لایسنس ٫ آنتی ویروس و اکانت مبتنی بر IBSng . کاملا فارسی + پنل کاربری +تمدید آنلاین
وب سایت رسمی :
ibsmng.ir - تلگرام :
@taher6775 - تماس : 09111276775
-
تعداد تشکر ها از rayanagostar به دلیل پست مفید
-
عضو جدید
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
Left Join رو روی دو ستون متناظر باید قرار بدید.
- بنا به مثالی که زدید.
در کد کنونی شما فکر کنم روی Name تلاش کردید که Join کنید و خب این دو مقدار با هم برابر نیستند تا به شما خروجی مورد نیاز را بدهند.
دانا باید از دانش خویش نادان را آگاه سازد، نشاید بیش از این نادان گمراه بماند.
(یسنا – هات ۳۱ بند ۱۷)
-
تعداد تشکر ها از Lithium به دلیل پست مفید
-
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
سپاس از پاسخ دوستان 
join بین id ها انجام شده
مشکل من در حلقه (تکرار) باید باشه
به جایی نمایش به صورت دو پست زیر
محمد کفش - جوراب - تی شرت – ریش تراش – شلوار - موبایل |
محمد علی
پیراهن – مسواک .
|
به صورت زیر
و در چند پست نمایش داده میشه
-
-
عضو جدید
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
دانا باید از دانش خویش نادان را آگاه سازد، نشاید بیش از این نادان گمراه بماند.
(یسنا – هات ۳۱ بند ۱۷)
-
تعداد تشکر ها از Lithium به دلیل پست مفید
-
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
ممنون از پاسخ
نتیجه باز صحیح نیست (از تیبل دوم فقط یک مقدار برای نمایش وجود داره)
به صورت زیر شد
-
-
عضو انجمن
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
درود
فکر نمی کنم چیزی که مد نظر شماست با یک کوئری انجام پذیر باشه چون شما می خواید به تعداد رکورد های یافت شده در جدول اول نتیجه داشته باشید.
یک کوئری بزنید روی جدول اول برای جستجو.بعد براش یک حلقه بنویسید که خرید ها رو به ازای هر نتیجه از جدول یک لیست کنه.
شازده کوچولو پرسید:از کجا بدانم وابسته شده ام؟!
روباه گفت:تا وقتی هست،نمی فهمی...
Telegram : Coala_71
-
-
پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
جهت اطلاع
و اینکه جواب سوال به دست امده رو عرض کنم ./
با دستور
group_concat
مشکلم حل شد
مثال
کد:
SELECT *
FROM tbl_1
LEFT JOIN (select group_concat(tbl_2.name_2) as name_2 , id_2 from tbl_2
group by id_2) tbl_2
ON tbl_2.id_2 = tbl_1.id
ویرایش توسط amin8520 : May 24th, 2019 در ساعت 03:51
-
تعداد تشکر ها از amin8520 به دلیل پست مفید