2014-06-14 42 views
0

我有這個MySQL查詢,我似乎無法工作。 我希望它從表「組合」中的「符號」。 (SELECT symbol FROM portfolio GROUP BY symbol) 雖然那麼我想它限制其搜索: (WHERE key = '$key' AND hash = '$hash' ORDER BY time DESC爲什麼這個(組)MySQL查詢不會工作

總之,這是整個查詢,但它給我的語法錯誤,當我運行它,任何幫助將是很好。

SELECT symbol FROM portfolio GROUP BY symbol WHERE username = '$username' AND hash = '$hash' ORDER BY time DESC; 
+0

給我們確切的錯誤信息將是很好了。 –

+2

just up up make因爲您不能 – Strawberry

+0

@cale_b它是與WHERE相關的語法錯誤。 (#1064 - 你的SQL語法錯誤;查看與你的MySQL服務器版本相對應的手冊,在正確的語法附近使用'WHERE username ='$ username'AND hash ='$ hash'ORDER BY time DESC 限制0,25'在第1行) –

回答

1

GROUP BY必須去(或之前)ORDER BY條款。

此外,在``之間放置時間,所以它不會衝突,如果它是您正在使用的SQL引擎中的關鍵字。

+0

就是這樣。之後(或之前)? –

+0

我說「或」,因爲不同的實現接受它在任一方或雙方。 – Mario

+0

我已經刪除了所有的ORDER BY,仍然不會工作 –

3

試試這個

SELECT symbol FROM portfolio WHERE username = '$username' AND hash = 
'$hash' GROUP BY symbol ORDER BY time DESC; 
+0

工作出色,謝謝。 –

+0

如果你解釋你改變了什麼,以及它爲什麼有效,我會+1。 –

+0

@cale_b閱讀並比較,WHERE子句在他的查詢中首先出現 –

相關問題