mysql价格比较,显示连接中的所有价格
Posted
技术标签:
【中文标题】mysql价格比较,显示连接中的所有价格【英文标题】:mysql price compare, show all prices in a join 【发布时间】:2015-04-11 20:56:21 【问题描述】:我有一个名为 babyfoontest
的 mysql
产品表,其中我的所有产品都按如下方式列出:
idnummer | ean | typenummer | merk
1 | 1111| Baby1 | Philips
2 | 2222| Baby2 | Alecto
我有一个名为 prijzen
的大价格表,所有价格来自不同的 webshops
,如下所示:
idnummer | shopnaam | typenummer | price | eancode | producturl | categorie
1 | Amazon | Baby1 | 9,99 | 1111 | www.test.nl| baby
2 | Amazon | Baby2 | 19,99 | 2222 | www.test.nl| baby
3 | BCC | Baby1 | 17,99 | 1111 | www.test.nl| baby
现在在我的结果页面上,我想显示5
的产品并进行价格比较。在我的产品表中,每个EAN
都是unique
。我想将它与价格表中的所有EAN
数字匹配,并显示从min
到max
的所有价格。我怎样才能做到这一点?
在上面的示例中,如果第一个产品在结果页面上,Baby1
,我想显示(9,99 AND 17,99)
的价格,因为它们与EAN
匹配。
我有这个:
SELECT *
FROM babyfoontest
INNER JOIN prijzen
ON babyfoontest.ean = prijzen.eancode
LIMIT 0, 5
所以表格匹配,但现在我从prijzen
表格中只得到一个价格,我需要该产品的所有价格。我使用这个 foreach 循环:
$i = 1;
foreach ($data as $info)
echo $i;
echo ' asd '.$info->typenummer.'<br>';
echo 'asd '.$info->producturl.'<br>';
echo 'asd '.$info->deeplink.'<br>';
echo 'asd '.$info->eancode.'<br><br>';
$i++;
请帮帮我!
谢谢!!
亲切的问候, 标记
【问题讨论】:
我在循环中看不到$info->price
。
【参考方案1】:
也许您想将价格连接在一起。像这样的:
SELECT b.ean, group_concat(p.price order by p.price) as prices
FROM babyfoontest b INNER JOIN
prijzen p
ON b.ean = p.eancode
GROUP BY b.ean
LIMIT 0, 5
【讨论】:
嗨,戈登,感谢您的回答。我已经尝试过了,但现在加载到页面需要很长时间。我还需要 prijzen 表中的价格、producturl 和 shopnaam,这样我就可以显示 5 种产品的带有徽标和深度链接的所有价格。这可能吗?非常感谢您帮助我!以上是关于mysql价格比较,显示连接中的所有价格的主要内容,如果未能解决你的问题,请参考以下文章