2016-03-23 55 views
-1

我有了這個功能,從DB選擇顯示重複值DISTINCT聲明

function get_all_product_data_admin() 
{ 
    $query = "SELECT DISTINCT category FROM products ORDER BY product_id AS"; 
    mysql_query("SET NAMES 'utf8'"); 
    $result = mysql_query($query); 
    if($result == false) //Something is wrong with the query 
    echo "result non"; 
    if(mysql_num_rows($result) == 0) //No Pages 
    echo "result 0"; 

    while($row = mysql_fetch_assoc($result)) // MAKES 2D ARRAY FOR DRAWING A LIST 
    { 
    $returned_array[] = $row;   
    } 
    return $returned_array; 
} 

只得到不同的值,並且這是HTML。我使用switch,所以英文值將顯示爲他們的希伯來語翻譯。

$menu = get_all_product_data_admin(); 
foreach($menu as $key=>$val) { 
    switch($val['category']) 
    { 
     case "bread": $catt = "לחמים"; break; 
     case "buns": $catt = "לחמניות"; break; 
     case "bake": $catt = "מאפים"; break; 
     case "cake": $catt = "עוגות"; break; 
     case "cookies": $catt = "עוגיות"; break; 
     case "dessert": $catt= "קינוחים אישיים"; break; 
     case "pita": $catt = "פיתות"; break; 
     case "friday": $catt = "חלות יום ו"; break; 
     case "baget": $catt = "באגטים"; break; 
     case "jabeta": $catt = "ג'בטות"; break; 
     case "nogloten": $catt = "ללא גלוטן"; break; 
     case "holiday": $catt = "מוצרי חגים"; break; 
     case "special": $catt = "מיוחדים"; break; 
    } 
    echo ' 
    <a style="float:right;" href="add_product.php?cname='.$val['category'].'"> 
     '.$catt.' 
    </a> 
    '; 
} 

我還是有價值重複複製。任何人 ?

+0

你的SQL查詢應該像這樣結束:'ORDER BY product_id ASC' < - 非'AS' – KDOT

+1

不需要使用ASC。它會在默認的ASC順序排序 – devpro

+1

非常真實的@devpro,所以只需刪除您的查詢「AS」Mike – KDOT

回答

2

使用Group by

SELECT category FROM products Group by category 

的GROUP BY語句一起使用與聚合函數組的結果集由一個或多個列。

+0

我的問題是一些值返回兩次.replacecing values應該來 – Mike

+0

你試試這個查詢選擇類別FROM產品按類別組 @Mike –

+0

沒有結果(其相同 – Mike