نمایش نتایج: از شماره 1 تا 9 , از مجموع 9

موضوع: نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

  1. #1
    عضو جدید
    تاریخ عضویت
    Jul 2012
    نوشته ها
    22
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    1
    تشکر شده در
    تشکر شده 1 بار در 1 پست

    پیش فرض حلقه (تکرار) و نتایج جستجو و دستور 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

  2. # ADS




     

  3. #2
    عضو جدید
    تاریخ عضویت
    Jul 2012
    نوشته ها
    22
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    1
    تشکر شده در
    تشکر شده 1 بار در 1 پست

    پیش فرض پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

    مثال :

    TBL_1

    id1
    name
    1
    محمد
    2
    حسین
    3 محمد علی

    TBL_2

    kharid
    id2
    کفش
    1
    پیراهن
    3
    جوراب
    1
    تی شرت
    1
    کفش
    2
    مسواک
    3
    ریش تراش
    1
    شلوار
    1
    موبایل
    1
    هارد
    2



    با جستجو کلمه علی
    میخوام علی و خریدش
    و محمد علی با خریدش در دو پست مجزا نمایش داده بشه هر کدئم با خرید های خودشون


    محمد
    کفش - جوراب - تی شرت – ریش تراش – شلوار - موبایل


    محمد علی

    پیراهن – مسواک .


    لطفا راهنمایی کنید / ممنون
    ویرایش توسط amin8520 : May 22nd, 2019 در ساعت 04:30

  4. #3
    عضو انجمن rayanagostar آواتار ها
    تاریخ عضویت
    Aug 2016
    نوشته ها
    165
    تشکر تشکر کرده 
    42
    تشکر تشکر شده 
    89
    تشکر شده در
    79 پست

    پیش فرض پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

    باید از group by استفاده کنید
    اسکریپت فروش اکانت دیجیتالی IBSmng. اپل آیدی ٫ لایسنس ٫ آنتی ویروس و اکانت مبتنی بر IBSng . کاملا فارسی + پنل کاربری +‌تمدید‌ آنلاین
    وب سایت رسمی :ibsmng.ir - تلگرام : @taher6775 - تماس : 09111276775

  5. تعداد تشکر ها از rayanagostar به دلیل پست مفید


  6. #4
    عضو جدید Lithium آواتار ها
    تاریخ عضویت
    Aug 2018
    نوشته ها
    21
    تشکر تشکر کرده 
    5
    تشکر تشکر شده 
    35
    تشکر شده در
    24 پست

    پیش فرض پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

    Left Join رو روی دو ستون متناظر باید قرار بدید.
    کد:
    ON TBL_1.id=TBL_2.id
    - بنا به مثالی که زدید.

    در کد کنونی شما فکر کنم روی Name تلاش کردید که Join کنید و خب این دو مقدار با هم برابر نیستند تا به شما خروجی مورد نیاز را بدهند.
    دانا باید از دانش خویش نادان را آگاه سازد، نشاید بیش از این نادان گمراه بماند.
    (یسنا – هات ۳۱ بند ۱۷)

  7. تعداد تشکر ها از Lithium به دلیل پست مفید


  8. #5
    عضو جدید
    تاریخ عضویت
    Jul 2012
    نوشته ها
    22
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    1
    تشکر شده در
    تشکر شده 1 بار در 1 پست

    پیش فرض پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

    سپاس از پاسخ دوستان


    join بین id ها انجام شده

    مشکل من در حلقه (تکرار) باید باشه

    به جایی نمایش به صورت دو پست زیر


    محمد
    کفش - جوراب - تی شرت – ریش تراش – شلوار - موبایل


    محمد علی

    پیراهن – مسواک .

    به صورت زیر
    و در چند پست نمایش داده میشه



    محمد
    کفش


    محمد
    جوراب

    محمد
    تی شرت

    محمد
    ریش تراش

    محمد
    شلوار

    محمد
    موبایل


    محمد علی

    پیراهن

    محمد علی

    مسواک

  9. #6
    عضو جدید Lithium آواتار ها
    تاریخ عضویت
    Aug 2018
    نوشته ها
    21
    تشکر تشکر کرده 
    5
    تشکر تشکر شده 
    35
    تشکر شده در
    24 پست

    پیش فرض پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

    GROUP BY TBL_1.id
    دانا باید از دانش خویش نادان را آگاه سازد، نشاید بیش از این نادان گمراه بماند.
    (یسنا – هات ۳۱ بند ۱۷)

  10. تعداد تشکر ها از Lithium به دلیل پست مفید


  11. #7
    عضو جدید
    تاریخ عضویت
    Jul 2012
    نوشته ها
    22
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    1
    تشکر شده در
    تشکر شده 1 بار در 1 پست

    پیش فرض پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

    ممنون از پاسخ

    نتیجه باز صحیح نیست (از تیبل دوم فقط یک مقدار برای نمایش وجود داره)

    به صورت زیر شد

    محمد
    کفش

    محمد علی
    پیراهن

  12. #8
    عضو انجمن xwoman2 آواتار ها
    تاریخ عضویت
    May 2012
    محل سکونت
    مشهد
    نوشته ها
    145
    تشکر تشکر کرده 
    385
    تشکر تشکر شده 
    180
    تشکر شده در
    143 پست

    پیش فرض پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه

    درود
    فکر نمی کنم چیزی که مد نظر شماست با یک کوئری انجام پذیر باشه چون شما می خواید به تعداد رکورد های یافت شده در جدول اول نتیجه داشته باشید.
    یک کوئری بزنید روی جدول اول برای جستجو.بعد براش یک حلقه بنویسید که خرید ها رو به ازای هر نتیجه از جدول یک لیست کنه.
    شازده کوچولو پرسید:از کجا بدانم وابسته شده ام؟!
    روباه گفت:تا وقتی هست،نمی فهمی...
    Telegram : Coala_71


  13. #9
    عضو جدید
    تاریخ عضویت
    Jul 2012
    نوشته ها
    22
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    1
    تشکر شده در
    تشکر شده 1 بار در 1 پست

    پیش فرض پاسخ : نتایج جستجو و دستور 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

  14. تعداد تشکر ها از amin8520 به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. اینستاگرام پشتیبانی از زبان فارسی را بصورت رسمی اضافه کرد
    توسط azadbahrami در انجمن اخبار دنیای فناوری
    پاسخ ها: 0
    آخرين نوشته: November 1st, 2017, 03:31
  2. پاسخ ها: 0
    آخرين نوشته: October 26th, 2016, 17:56
  3. پاسخ ها: 5
    آخرين نوشته: October 9th, 2014, 18:55
  4. استخدام یک نفر پشتیبان بصورت غیر حضوری
    توسط AliFatehi در انجمن به دنبال کارمند هستم
    پاسخ ها: 14
    آخرين نوشته: August 22nd, 2014, 15:28
  5. پاسخ ها: 12
    آخرين نوشته: May 22nd, 2014, 10:06

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •