2011-08-31 107 views
0

這裏是我使用的SQL語句..MySQL的選擇GROUP BY和順序按

$sql = "SELECT surname, forename, count(*) FROM people WHERE user_id='$user_id' 
     GROUP BY surname ORDER BY time"; 

$result = mysql_query($sql); 
$count=mysql_num_rows($result); 

if($count > 0){ 
while($row = mysql_fetch_array($result)) { 
$i = $i +1; 
$person[$i] = $row['surname'].'&&'.$row['forename']; 
} 

我想獲得從人的數據庫相對於所有條目USER_ID按姓氏分組和排序直到他們進入數據庫。例如

12:00 Smith James 
13:00 Smith Linda 
14:00 Smith Sam 

12:30 OtherSurname Lydia 
13:30 OtherSurname Harry 
14:30 OtherSurname Phil 

現在的問題是,我只得到每個姓氏的一個結果。 如何使用GROUP BY和ORDER BY的SELECT語句獲取所有條目?謝謝。

+0

請提供表結構。 –

回答

2

更改GROUP BY到:

GROUP BY surname, forename 
+0

這很有用,我認爲答案在於這個和@codez的答案的結合 – Wez

2

你不姓需要組,則需要按姓氏訂購

ORDER BY surname,time