2015-11-06 99 views
1

我如何停止查詢我的下拉重複,如下圖所示?下拉選項查詢sql返回重複

Dropdown image

請選擇CD價格:

<select name="CDPrice"> 
    <option value=""> 
     <?php 
     include 'database_conn.php'; 
     if (!(is_object($conn) && (get_class($conn) == 'mysqli'))) { 
      die("DB connection failure."); 
     } 
     $rsCDprice = mysqli_query($conn, "SELECT nmc_cd.CDPrice FROM nmc_cd"); 
     if (!$rsCDprice) { 
      die("No result from DB query."); //probably invalid SQL, table error, etc. 
     } 
     if ($rsCDprice->num_rows < 1) { 
      die("No rows returned from DB query."); //query runs OK, but nothing is found in DB to match. 
     } 
     while ($Catpriceresult = mysqli_fetch_array($rsCDprice)) { 
      echo "<option value='" . $Catpriceresult[0] . "'>" . $Catpriceresult[0] . "</option>"; 
     } 
     ?> 
</select> 

回答

1

嘗試執行下面的代碼。 請選擇CD價格:

<select name="CDPrice"> 
    <option value=""> 
     <?php 
     include 'database_conn.php'; 
     if (!(is_object($conn) && (get_class($conn) == 'mysqli'))) { 
      die("DB connection failure."); 
     } 
     $rsCDprice = mysqli_query($conn, "SELECT DISTINCT nmc_cd.CDPrice FROM nmc_cd"); 
     if (!$rsCDprice) { 
      die("No result from DB query."); //probably invalid SQL, table error, etc. 
     } 
     if ($rsCDprice->num_rows < 1) { 
      die("No rows returned from DB query."); //query runs OK, but nothing is found in DB to match. 
     } 
     while ($Catpriceresult = mysqli_fetch_array($rsCDprice)) { 
      echo "<option value='" . $Catpriceresult[0] . "'>" . $Catpriceresult[0] . "</option>"; 
     } 
     ?> 
</select> 
1

您可以使用此DISTINCTgroup by

  1. group by

    SELECT nmc_cd.CDPrice FROM nmc_cd GROUP BY nmc_cd.CDPrice

  2. DISTINCT

    SELECT DISTINCT nmc_cd.CDPrice FROM nmc_cd
1

選擇從DB(唯一值)DISTINCT

SELECT DISTINCT nmc_cd.CDPrice FROM nmc_cd 
+0

謝謝你這麼多 –

1

這應做到:

SELECT DISTINCT nmc_cd.CDPrice FROM nmc_cd 

祝你好運!

+0

太謝謝你了 –

1

table中,column可能包含許多duplicate values;有時你只想列出different (distinct) values

DISTINCT關鍵字可用於僅返回不同的(不同的)值。

語法:

SELECT DISTINCT column_name,column_name 
    FROM table_name;