- 
	
	
		
		
			
				
				
				
					
 حلقه (تکرار)  و نتایج جستجو و دستور 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 در ساعت 05:32
					
					
				
				
				
				
				
					 
				
				
				
			 
			
			
		 
	 
		
	
 
- 
    
 
		
		- 
		
			
						
						
							May 20th, 2019 00:07
						
					
					
						
							 # ADS
						
					
			
			
			
					
						
			
						
							
								
									
								
							
					
					
			
			
				
			
		 
		
	
- 
	
	
		
		
			
				
				
				
					
 پاسخ : نتایج جستجو و دستور select در دو تیبل در صورتی که تیبل دوم دارایی نتایج بیشتر باشه
				
				
						
						
				
					
						
							مثال :
  TBL_1
 |     id1 
  | 
    name 
  | 
|     1 
  | 
    محمد 
  | 
|     2 
  | 
    حسین 
  | 
| 3 | 
محمد علی | 
 
 TBL_2
   
با جستجو کلمه علی
 میخوام علی و خریدش 
و محمد علی با خریدش در دو  پست مجزا نمایش داده بشه هر کدئم با خرید های خودشون
   |     محمد        کفش  - جوراب  - تی شرت – ریش تراش – شلوار - موبایل  | 
 
      
    |     محمد علی     
    پیراهن – مسواک                                                                                                   . 
  | 
 
   
لطفا راهنمایی کنید / ممنون
						
					 
					
				 
			 
			
			
				
				
				
					
						ویرایش توسط amin8520 : May 22nd, 2019 در ساعت 05: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 در ساعت 04:51
					
					
				
				
				
				
				
				
				
			 
			
			
		 
	 
		
	
 
- 
    
    
    
    
    
        
            تعداد تشکر ها از amin8520 به دلیل پست مفید