php - 删除重复的 MySQL 查询结果?

标签 php mysql sql duplicates

我正在使用 SELECT COUNT 检查我的 mysql 表是否有任何重复项,如果有,我希望它删除重复项。

下面是查询结果的截图: http://s.prelicio.us/lDyRV.png

现在我的表中有 2 个“Aanpassingen voor website Chat-Garden”。这是正确的,所以我计算了“Aantal”所在的位置,它会告诉我“Aanpassingen voor website Chat-Garden”有多少行。

但现在我希望它删除我屏幕截图中的重复行,因为“2”已经显示在“Aantal”中。然后我的屏幕截图中不需要额外的行。 (请原谅我的英语不好)

这是当前代码:

<?php 

$products = mysql_query('SELECT * FROM `preo_invoices-products`');
if(!$products || mysql_num_rows($products) == '0') echo '<li>Er zijn geen producten voor dit factuur.</li>'; 

else $i == '0'; while($product = mysql_fetch_object($products)) {

$color = ($i % 2 == 0) ? ' class="grey"' : ''; $i++;


$result = mysql_query('SELECT *, COUNT(`id`) FROM `preo_invoices-products` WHERE `invoiceid` = "'.$paid->id.'" GROUP BY `description`');
while($row = mysql_fetch_array($result)) { 

?>

<li<?php echo $color; ?>>

<span class="inv9"><?php echo $row['COUNT(`id`)']; ?></span> // This one is the 'Aantal' where it shows 2
<span class="inv3">

<?php 
$services = mysql_query('SELECT * FROM `preo_services` WHERE `id` = "'.$product->serviceid.'" LIMIT 1');
while($service = mysql_fetch_object($services)) echo strtoupper($service->name); 
?>

</span>
<span class="inv14"><?php echo $product->description; ?></span>
<span class="inv9"><?php echo $product->tax; ?>%</span>
<span class="inv12">&euro;<?php echo $product->sum; ?>,-</span>
<span class="inv15">&euro;<?php echo $product->sum*$row['COUNT(`id`)']; } ?>,-</span>

</li>

<?php } ?> 

它现在实际上必须删除重复的行,因为“Aantal”显示我有一个重复的行。但是当我有 3 行相同的行时,它会在 Aantal 处显示“3”,并且在我的屏幕截图中仍然必须显示 1 行。

有什么想法吗?

最佳答案

您可以在查询中添加DISTINCT,例如

SELECT DISTINCT * FROM tableName

关于php - 删除重复的 MySQL 查询结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13851220/

相关文章:

php - php中的简单注册页面

php - 将数据从mysql导出到文本文件?

mysql - MariaDB 未启动

sql - 如何获取/生成现有 Hive 表的创建语句?

javascript - 使用 strtotime PHP 转换时间

javascript - 音频html5循环暂停

php - 解析错误 : Syntax error, SQL 查询出现意外的 T_String 问题

MySQL 事务返回错误

php - 如何使用 PHP 从 MYSQL 中选择特定的行?

php - 经常使用的 PDO 行数