php - 如何统计变量值是否重复?

标签 php mysql

我正在学习如何使用 MySQL,目前我成功地显示了表中的数据,使用:

while($objResult2 = mysqli_fetch_assoc($objQuery_product)) {

通过使用此变量显示结果 $objResult2["id_product"]; 这样我就可以从数据库中获取我想要的任何字段,例如: $objResult2["name"]; $objResult2["email"];

但是如果表中有更多具有相同 id_product 的行,我该怎么办?

我想编写一个 if 语句,如果 id_product 重复则计数。怎么做?如果工作量很大,至少请给我一个我必须阅读的正确教程的想法。因为我第二天正在尝试解决这个问题,并搜索了谷歌,但我没有找到我需要的东西,或者也许我无法理解它......

这是我的查询

$sql_product = "SELECT * FROM ps_product AS prod";
$join_product = " LEFT JOIN ps_product_lang AS lang ON lang.id_product = prod.id_product";
$join2_product = " LEFT JOIN ps_stock_available AS stok ON stok.id_product = prod.id_product";
$where_product =" WHERE prod.id_category_default = $idp AND lang.id_lang = 8";

$sql_product = $sql_product.$join_product.$join2_product.$where_product;
$objQuery_product = mysqli_query($objConnect, $sql_product) or die ("Error Query [".$sql_product."]");

最佳答案

您可以在查询中使用 DISTINCT 关键字简单地删除相同的 id_product。如:

SELECT DISTINCT id_product FROM my_table

这只会为您提供具有不同 ID 的结果。

第二种方法是将输出值放入数组中。

在 while 循环中:

$my_array[] = $objResult2["id_product"];

然后使用array_filter删除数组内的所有重复项。 如果您想计算重复值,也可以使用 array_count_values() 。

关于php - 如何统计变量值是否重复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21497017/

相关文章:

MySQL 内存使用情况(InnoDB、Win)

php - 当 php 代码没有达到 release-mysql-lock 阶段时会发生什么?

javascript - 子菜单在用户单击并在新页面中打开时保持事件状态

php - 格式化 MySQL 中的时间戳

php - 无法将用户链接到相应的结果 CODEIGNITER

php - 在一个有两个外键的表中插入数据(php)

javascript - 哪一种是从具有特定文件名的 URL 下载视频/音频的最佳方法?

php - CakePHP 多个复选框数组 HTML 的正确方法

php - CakePHP v3.x 如何在没有数据库连接的情况下烘焙

mysql - 出现控制命令时的.BAT 文件代码