需要帮助删除mysql结果中的重复列

时间:2013-08-26 16:43:23

标签: php mysql loops html-table

我有一个按国家/地区返回结果的网站。有一个返回此的查询,然后我使用循环来输出数据。唯一的问题是,对于其中一个,有一个sub-50列,结果与sub-36列一直相同。我需要帮助删除重复的列。

// By country
// sort countries by most subXs in descending order
arsort($country_sub{$dsub});
// print results
echo "<b><span style='font-size:20px;'>By Country</span></b>";
echo "<table><tr style='font-weight:bold;'><td style='width:100px;'>Country</td><td>sub".$dsub."</td>";
for($i=$dsub-1; $i>=$x; $i--){ echo "<td>sub".$i."</td>"; }
echo "</tr>";
foreach($country_sub{$dsub} as $country => $value){
 echo "<tr><td>".$country."</td><td>".$value."</td>";
 for($i=$dsub-1; $i>=$x; $i--){
 if (isset($country_sub{$i}[$country])) {
  echo "<td>".$country_sub{$i}[$country]."</td>";
 } else{
  echo "<td></td>";

 }
 echo "</tr>";
}
echo "</table><br/>";

数组$country_sub{$dsub}包含具有该结果或更少结果的人数。 foreach循环输出顶部数字,for循环输出结果本身。

您可以在此链接中查看此代码的使用位置:http://cubingstats.netau.net/3bld/index.php。它用于“按国家”部分。我想要的只是在那个表中,以显示sub 36和sub 27(上面列出的那些)。任何帮助都非常有用!

编辑:第26-32行(请参阅下面的评论链接)显示addOne函数,它将数据添加到数组中。然后在显示结果时将其用于第48-50行和第68-70行。

1 个答案:

答案 0 :(得分:2)

在SQL查询中,在DISTINCT

之后添加SELECT
SELECT DISTINCT fields,fields...fields
FROM...