-2
$query = "SELECT shop_id, article_id, design_id FROM shop_tshirts WHERE design_id = '$design'";
$zres = mysql_query($query) or die(mysql_error());
$total = mysql_num_rows($zres);

我使用此代码来获取使用特定 $design 的产品数量。

每个 shop_id 是否可以只计算一次产品?

此数据库结构的示例:

shop_id / article_id / design_id
S01 / A01 / D01
S02 / A02 / D01
S03 / A03 / D01
S03 / A04 / D01

通常使用这种结构,我的代码的结果将是 4...我想更改代码,因此结果将是 3,因为 D01 在 S03 中被使用了两次,我只想在每个商店计算一次。

谢谢 !

4

3 回答 3

0
SELECT distinct shop_id, article_id, design_id FROM shop_tshirts WHERE design_id = '$design'
于 2013-11-11T11:09:35.597 回答
0

您必须使用 SQL SELECT DISTINCT 语句

$query = "SELECT DISTINCT shop_id, article_id, design_id FROM shop_tshirts WHERE design_id = '$design'";
于 2013-11-11T11:13:13.177 回答
0

您需要唯一的 shop_id 值

您不需要 article_id 或 design_id

$query = "SELECT DISTINCT shop_id FROM shop_tshirts WHERE design_id ='$design'";
$zres = mysql_query($query) or die(mysql_error());
$total = mysql_num_rows($zres);
于 2013-11-11T11:39:48.013 回答