2012-04-02 45 views
0

出於某種原因(我想我知道爲什麼),當多於一行的$ activityday具有相同的值時,其他行不再顯示。我認爲這是因爲組由,但我不能確定。GROUP BY刪除具有相同值的行

$ activityday是一個從1到9的數字,表示當天的活動。表venues_activity取這個數字並寫出活動的名稱,而組由命令活動的重要性。

是否有替代方案可以顯示我的所有行?謝謝! :)

SELECT 
venues.*, 
venues_activity.ACTIVITY_EN 
FROM venues 
INNER JOIN venues_activity 
ON $activityday = venues_activity.ID 
LEFT JOIN events 
ON events.VENUE_LOCATION = venues.ID 
AND start_datetime >= '$DATE_START_SELECTED' 
AND end_datetime < '$DATE_END_SELECTED' 
where events.VENUE_LOCATION IS NULL 
AND VENUE_TYPE='1' 
AND $closeday!='Closed' 
AND $activityday!='9' 
GROUP BY $activityday 

回答

2

我想你想的ORDER BY clause... not the GROUP BY clause

GROUP BY是爲了做你描述什麼?組重複值成單行,其目的是與聚合函數一起使用,如SUMAVG,或COUNT

ORDER BY只是命令結果。

+0

哇,從來沒有發生過我。謝謝! – pufAmuf 2012-04-02 15:55:34

2

使用order by中,而不是group by