Diplay所有记录,但不同?

时间:2016-08-04 06:52:55

标签: php sql

我正在尝试显示tbInventory中的所有记录,但记录中有多个重复记录,特别是在colItem列下。现在我想要显示的是tbInventory中的所有记录,但是我希望它只是在它有重复时才会显示一个项目。

现在我的当前代码显示了这个:

enter image description here

如您所见,它打印的所有项目的colItem值为“接入点”。我只希望代码只显示一次“访问点”项,即使它有重复项。

现在我不能简单地使用 DISTINCT 功能,因为我还使用代码块来打印数据。这是我目前的代码:

$con=mysqli_connect("localhost","root","","dbDssInventory");
if (mysqli_connect_errno($con)){
    echo "Failed to connect to MySQL " . mysqli_connect_error();
}

$result=mysqli_query($con,"SELECT * from tbInventory ORDER BY colItem");

if($result != NULL){
    while($row=mysqli_fetch_array($result))
        {
            echo "<table border=0 style=\"table-layout:fixed;\">";
            echo "<tr>";    
            echo "<td align=left width=15 style=\"word-wrap:break-word;\">";                                                            
            echo "<div class=\"hover_img\">";

            echo "  <a href=\"#\">";
            echo "  <img src='MAGNIFYINGGLASS.png' alt='Point' width='70%'><em>
            <object data=" .$row['colImage']. ".PNG width='850%' type=\"image/png\">
            <img src=\"default.png\" width='850%'>
            </object>";
                echo "</td>";

                echo "<td align=left width=160 style=\"word-wrap:break-word;\" style=\"word-wrap:break-word;\">";
                echo $row['colItem'];                                                                                                                               
                echo "</td>";

$itemname= $row['colItem'];     

有没有办法执行此操作?

1 个答案:

答案 0 :(得分:0)

而不是

$result=mysqli_query($con,"SELECT * from tbInventory ORDER BY colItem");

试试这个:

$result=mysqli_query($con,"SELECT * from tbInventory GROUP BY colItem ORDER BY colItem");

即使它有重复项,您也只会获得一次“接入点”项目。希望它有所帮助!