2012-11-18 55 views
0

我有兩個名爲user和submission的表。我想自然地加入他們。然後按列分組。然後選擇兩列。給他們別名。然後按給定的別名對它們進行排序。但它不起作用。我的代碼已在下面給出。任何幫助,將不勝感激。感謝提前。我的SQL命令不起作用

select name, count(result) as name, tried from user natural join submission group by name sort by tried; 
+1

「It is not working」><。 –

+1

@LightnessRacesinOrbit是想說的是,當你說「它不工作」時,有些東西可以讓你看到它不工作,或者輸出錯誤,奇怪的行爲或顯示的錯誤。當你說「它不工作」時,有助於與我們分享所有信息。 – ajacian81

+0

它說:「#1064 - 你的SQL語法有錯誤;檢查與你的MySQL服務器版本相對應的手冊,以便在'按計數排序(結果)」第2行的限制0,30'附近使用正確的語法「 –

回答

2

你有兩種結果與同一個名字:

select name, <-- 1st "anme" 
count(result) as name, <-- 2nd name 
tried from user natural join submission group by name order by tried; 

解決方法是容易,因爲所有你需要做的是改變COUNT

select name, 
count(result) as result_count, 
tried from user natural join submission group by name order by tried; 
+1

你剛纔給出的答案是不正確的;也不管用。它說:「#1064 - 你的SQL語法有錯誤;查看與你的MySQL服務器版本相對應的手冊,以便在'用戶自然連接提交組'附近使用的正確語法附近使用,通過嘗試按限制0,30進行排序第2行「 –

+1

感謝您的回覆,但它不起作用 –

1
select name, 
count(result) as result_count, 
tried from `user` natural join submission group by name ORDER by tried; 
結果的別名
+0

感謝您的答覆。但它不起作用。忘記別名。我甚至無法對它們進行排序。 'select name, 用戶自然連接提交組的count(result)按名稱排序count(result);'如果我切出'按count(result)排序'部分,那麼它工作正常。請幫忙 –

+1

這不是排序順序 – ajacian81

+0

@ eddard.stark:在這一點上,你通常會在文檔中查找'SORT BY',看看你是如何使用它的錯誤。在這種情況下,你會注意到它根本不存在。 –