繁体   English   中英

如何使用php和mysql显示数据一对多关系

[英]How to display data one to many relationship using php and mysql

我有很多产品,每种产品都有很多味道。 如何显示一个具有多种风味的产品名称。 下面是我尝试过的脚本。 它不显示任何内容。 我真的是 php 的新手。

$res = $conn->query("SELECT as_product.p_id,GROUP_CONCAT(as_product_flavour.pfl_prod_id) as flavours FROM as_product
LEFT JOIN as_product_flavour ON as_product.p_id = as_product_flavour.pfl_prod_id 
WHERE as_product.p_id = 28 GROUP BY as_product.p_id");      

        $currGroup = -1;
        while($row = $res->fetch_assoc())
        {
            echo 'Product Name: '.$row['product_name'];
            if($row['flavours'] != $currGroup)
            {
                $currGroup = $row['p_id'];

                echo 'Flavour Id: ' . $row['pfl_id'] . '\n';
                echo 'Falvour Name: ' . $row['pfl_flavour'] . '\n';                
            }

        }

我将从一个更简单的查询开始......

SELECT p.p_id
     , f.pfl_prod_id
  FROM as_product p
  LEFT 
  JOIN as_product_flavour f
     ON p.p_id = f.pfl_prod_id 
 WHERE p.p_id = 28

...并处理应用程序代码中任何剩余的显示问题,从而对结果数组进行简单的转换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM