PHP:mysql\u fetch\u数组排除重复条目

PHP:mysql\u fetch\u数组排除重复条目,php,mysql,arrays,sorting,Php,Mysql,Arrays,Sorting,我得到了一行简单的代码,获取sequel数据库并填充一个类别列表,这些类别字符串来自一个产品表,因此许多产品行产生重复的类别条目 $cat_result = $mysqli -> query("SELECT * FROM products"); while ($cat_row = mysqli_fetch_array($cat_result, MYSQL_NUM)) { if($cat_row['4'] != NULL) { print '<li>&

我得到了一行简单的代码,获取sequel数据库并填充一个类别列表,这些类别字符串来自一个产品表,因此许多产品行产生重复的类别条目

$cat_result = $mysqli -> query("SELECT * FROM products");
while ($cat_row = mysqli_fetch_array($cat_result, MYSQL_NUM)) { 
    if($cat_row['4'] != NULL) { 
        print '<li><a href="/category/'. $cat_row['4'] .'">'. $cat_row['4'] .'</a></li>'; 
    }
}

$cat_result=$mysqli->query(“从产品中选择*);
而($cat_row=mysqli_fetch_数组($cat_result,MYSQL_NUM)){
如果($cat_row['4']!=NULL){
打印“
  • ”; } }
    电流输出如下所示:

    • 类别1
    • 类别1
    • 类别2
    • 类别2
    那么我如何才能抑制重复条目并得到类似的结果呢

    • 类别1
    • 类别2

    谢谢你的帮助

    正如上面每个人所建议的
    DISTINCT
    groupby
    都可以解决您的问题,因此您可以执行以下操作:-

    假设列名为
    category
    ,则:-

    $cat_result = $mysqli -> query("SELECT DISTINCT(category) FROM products"); 
    
    OR 
    
    $cat_result = $mysqli -> query("SELECT * FROM products GROUP BY category");
    

    注意:-您也可以按照其他人的建议,在
    DISTINCT
    中选择不同列的n个编号。谢谢。

    正如上面每个人所建议的那样
    DISTINCT
    GROUP by
    都可以解决您的问题,因此您可以执行以下操作:-

    假设列名为
    category
    ,则:-

    $cat_result = $mysqli -> query("SELECT DISTINCT(category) FROM products"); 
    
    OR 
    
    $cat_result = $mysqli -> query("SELECT * FROM products GROUP BY category");
    
    注意:-您也可以按照其他人的建议,在
    DISTINCT
    中选择不同列的n个编号。谢谢。

    根据要求:

    您可以在SELECT中使用DISTINCT和/或GROUP BY

    即:

    按列x从表组中选择不同的列1、列2

    依照

    这将避免在查询中重复

    此外,
    WHERE
    子句也可能有用(稍后)

    即:

    参考:

    根据要求:

    您可以在SELECT中使用DISTINCT和/或GROUP BY

    即:

    按列x从表组中选择不同的列1、列2

    依照

    这将避免在查询中重复

    此外,
    WHERE
    子句也可能有用(稍后)

    即:

    参考:


    DISTINCT and/or GROUP BYHi@Fred ii-,再见!因此,我必须执行“按类别从产品组中选择*”,其中我必须使用DISTINCT?
    $cat_result=$mysqli->query(“从产品中选择DISTINCT(名称));或$cat_result=$mysqli->query(“按名称从产品组中选择*)
    选择不同的列从产品中调用的内容
    ,特别是当您只使用一列时,不要检索比您使用的更多的列,您会发现它运行得也更快!si和
    根据-come stai?DISTINCT和/或GROUP BYHi@Fred ii-从表中选择DISTINCT col1和col2
    ,再见!因此,我必须执行“按类别从产品组中选择*”,其中我必须使用DISTINCT?
    $cat_result=$mysqli->query(“从产品中选择DISTINCT(名称));或$cat_result=$mysqli->query(“按名称从产品组中选择*)
    选择不同的列从产品中调用的内容
    ,特别是当您只使用一列时,不要检索比您使用的更多的列,您会发现它运行得也更快!si和
    根据-come stai从表中选择不同的col1和col2?