2011-01-26 75 views
0

尊敬的先生/媽媽iam試圖從表中排序重複。 我想檢查一個名稱是否有相同的街道名稱,然後只顯示這些名稱的第一個結果,從而導致唯一的名稱ommitting雙打。 我嘗試了不同的(名稱)和組的聲明,但無濟於事。 集團通過結束了limmiting我的結果篩選出dubbels

$klantquery = "SELECT name, ID, street, tel, email FROM customers where name LIKE '%$search%' ORDER BY name ASC";  

該查詢工作,但顯示我需要篩選掉多餘的人的所有記錄?以顯示唯一的結果。

IAM使用MySQL和PHP 所以,現在我用這個查詢:

$ klantquery = 「SELECT DISTINCT NAAM,STRAAT,電子郵件,huisnummer,國家地點,日期從」 $ GLOBALS [ 「klanten」]「。 naam LIKE'%$ klantsearch%'ORDER BY naam ASC「;

工程就像一個魅力,但它省略了結果中的ID行,所以它沒用? 如何在結果中包含ID字段? 邏輯在哪裏?

+0

我們需要知道您使用的是哪個數據庫,因此我們知道可以使用哪些功能(例如,TOP)。我們還需要知道在存在多個功能時應該選擇哪個地址。 – 2011-01-26 17:59:36

回答

0

得到它我第一次選擇我需要的不同的記錄然後後來添加一個子查詢的ID,優雅不是真的,雖然工作。

$klantquery = "SELECT Distinct naam,straat,email,huisnummer,plaats,date FROM ".$GLOBALS["klanten"]." where naam LIKE '%$klantsearch%' ORDER BY naam ASC";     

while ($result=$klantpaging->result_assoc()) { 

    $subquery = "SELECT ID,naam,straat FROM ".$GLOBALS["klanten"]." where naam='".addslashes($result['naam'])."' AND straat='".$result['straat']."'"; 
    $subresult = mysql_query($subquery) or die("Query failed : " . mysql_error()); 
    while ($subline = mysql_fetch_assoc($subresult)) { 
    $result[ID] = $subline[ID]; 
    } 
    $klantrecords[] = $result; 
}