[英]What's wrong with this GROUP BY Query?
我似乎無法解決這個問題。 我閱讀的所有資源都表明可以這樣做:
'SELECT e.ID, e.EVENT_NAME, e.EVENT_DATE, v.VENUE_NAME, l.LOCATION, GROUP_CONCAT(ms.MUSIC_STYLE_NAME) as `Styles`'.
'FROM events AS e'.
'INNER JOIN venues as v ON e.VENUE_LOCATION = v.ID'.
'INNER JOIN locations AS l ON e.VENUE_LOCATION = l.ID'.
'INNER JOIN event_music_styles AS ems ON e.ID = ems.EVENT_ID'.
'INNER JOIN music_styles AS ms ON ms.ID = ems.MUSIC_STYLE_ID'.
'GROUP BY e.ID';
然而...
查詢無效:您的SQL語法有誤; 檢查與您的MySQL服務器版本相對應的手冊以獲取正確的語法,以在第1行的“ BY e.ID”附近使用
看來您錯過了空格。 嘗試
'SELECT e.ID, e.EVENT_NAME, e.EVENT_DATE, v.VENUE_NAME, l.LOCATION, GROUP_CONCAT(ms.MUSIC_STYLE_NAME) as `Styles`'.
' FROM events AS e'.
' INNER JOIN venues as v ON e.VENUE_LOCATION = v.ID'.
' INNER JOIN locations AS l ON e.VENUE_LOCATION = l.ID'.
' INNER JOIN event_music_styles AS ems ON e.ID = ems.EVENT_ID'.
' INNER JOIN music_styles AS ms ON ms.ID = ems.MUSIC_STYLE_ID'.
' GROUP BY e.ID';
我不確定這是什么語言,但似乎
'INNER JOIN music_styles AS ms ON ms.ID = ems.MUSIC_STYLE_ID'. 'GROUP BY e.ID'
會導致
'INNER JOIN music_styles AS ms ON ms.ID = ems.MUSIC_STYLE_IDGROUP BY e.ID'
因此無法識別“ group”關鍵字。
好吧,試試這個
SELECT e.ID,
e.EVENT_NAME,
e.EVENT_DATE,
v.VENUE_NAME,
l.LOCATION,
GROUP_CONCAT(ms.MUSIC_STYLE_NAME) as `Styles`
FROM events as e
INNER JOIN venues as v ON e.VENUE_LOCATION = v.ID
INNER JOIN locations as l ON e.VENUE_LOCATION = l.ID
INNER JOIN event_music_styles as ems ON e.ID = ems.EVENT_ID
INNER JOIN music_styles as ms ON ms.ID = ems.MUSIC_STYLE_ID
GROUP BY e.ID;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.