php ve mysql sorgu PRGRAM için en iyi yolu

3 Cevap php

çoğu kez sayfalarımızda biz döngü içinde tablo sadece 1 alan değerini yazdırmak gerekiyor. örneğin

 <?php

 for($i=1;$i<=mysql_num_rows($result);$i++)
 {
 echo $row['name'];
 $sql1="select industry from table_industry where profid='".$row['prof']."'";
 $result1=mysql_query($sql1);
 $row1=mysql_fetch_array($result1);
 echo $row1['industry']; ?>
 }
 ?>

Yukarıda biz $ row ['prof'] meslek kimliği değerini taşır ve her kişi mesleğini baskı olduğunu düşünüyorum, sadece örneğin bir PHP kodu olduğunu.

Örneğin biz tabloda 5000 + kayıt var ve döngü yukarıda + Zamanlar 5000 için yürüteceğini

ne tablodan table_industry industry alanının değeri yazdırmak için en iyi yol olacaktır

  1. I Yukarıda yazmak aynı kod?
  2. daha hızlı yürütülmesi ve kaynakların daha az kullanımı için başka herhangi bir php kod öneri?

Teşekkürler

3 Cevap

JOIN kullanmak

Eğer industry tablodaki değerleri ile sadece bu satırları eklemek istiyorsanız eğer sql olacak

    SELECT 
     table_prof.profid 
    , table_prof.name 
    , table_industry.industry  
      FROM table_prof 
      JOIN table_industry USING ( profid ) 
      ORDER BY table_prof.name ASC;

Eğer tablodaki tüm değerleri dahil etmek istiyorsanız ve table_prof daha sonra sql olacak

      SELECT 
     table_prof.profid 
    , table_prof.name 
    , table_industry.industry  
      FROM table_prof 
      LEFT JOIN table_industry USING ( profid ) 
      ORDER BY table_prof.name ASC;

Ben bu size yardımcı olacağını düşünüyorum ...

Senin mantık takip etmek, i tüm bilgiler bir karma yük ve karma yineleme, veritabanı öldürme değil seçmek olacaktır.