2016-06-20 16 views
0

2つのテーブルに結果を示す2つのクエリがあります。代わりに1つのテーブルに結果を表示したい。このデータを表示するにはどうすればいいですか?2つのMySQLクエリを組み合わせて1つのテーブル行に結果を表示する方法

だから、最初の行で、私は32,768 kHzの12.5pF、20/-0042/

  • GE 32,768 kHzのSMD
  • 12,87112
  • Rezonator kwarcowy KX-327Sを持つようにしたいです50K
  • Rezonatory filtry私źródłaczęstotliwości> Rezonatory kwarcowe(新しい行がここで追加の代わりに、 " - "
  • 1.190000

これは、今どのように見えるかです。私はあなたがでグループでGROUP_CONCATを使用することができます

enter image description here

<?php 
    $result = mysql_query('SELECT 
     prodlang.id_product AS "idprod", 
     prodlang.name AS "nazwa", 
     prod.price AS "cena", 
     prod.minimal_quantity AS "moq", 
     prod.ean13 AS "nazwag", 
     prod.reference AS "kod", 
     prod.quantity AS "ilosc", 
     prod.active AS "aktywny" 
     FROM pstest_product_lang prodlang 
     INNER JOIN pstest_product prod 
     ON prodlang.id_product=prod.id_product 
     limit 10'); 

     while ($row = mysql_fetch_array($result)) echo('<tr><td>'.$row['idprod'].'</td><td>'.$row['kod'].'</td><td>'.$row['nazwag'].'</td><td>'.$row['nazwa'].'</td><td> - </td><td>'.$row['ilosc'].'</td><td>'.$row['aktywny'].'</td><td>'.$row['moq'].'</td><td>'.$row['cena'].'</td></tr>'); 

?> 
<?php 
    $results = mysql_query('SELECT 
     prodcat.id_product AS "idprod", 
     catlang.name AS "nazwacat" 
     FROM pstest_category_product prodcat 
     INNER JOIN pstest_category_lang catlang 
     ON prodcat.id_category=catlang.id_category 
     ORDER BY idprod 
     limit 10'); 

     while ($row = mysql_fetch_array($results)) echo('<tr><td>'.$row['idprod'].'</td><td>'.$row['nazwacat'].'</td></tr>');            
?> 

答えて

1

"Nazwaのkategorii" 別の列を追加します。 mor情報については、group by docを参照してください。私はあなたの質問を変更し、それがうまくいくことを願っています:

SELECT 
     prodlang.id_product AS "idprod", 
     prodlang.name AS "nazwa", 
     prod.price AS "cena", 
     prod.minimal_quantity AS "moq", 
     prod.ean13 AS "nazwag", 
     t2.nazwacat as "nazwacat", 
     prod.reference AS "kod", 
     prod.quantity AS "ilosc", 
     prod.active AS "aktywny" 
     FROM pstest_product_lang prodlang 
     INNER JOIN pstest_product prod 
     ON prodlang.id_product=prod.id_product 
     join (
     SELECT 
     prodcat.id_product AS "idprod", 
     Group_concat(catlang.name) AS "nazwacat" 
     FROM pstest_category_product prodcat 
     INNER JOIN pstest_category_lang catlang 
     ON prodcat.id_category=catlang.id_category 
group by prodcat.id_product 
) t2 on t2.idprod=prodlang.id_product 
     limit 10 
+0

トップノッチ! :)私はそれがどのように動作するかを学ぶためにあなたのコードを調べます! – PipBoy2000

+0

ようこそ。 :) –

関連する問題