我在做我認爲是最簡單的查詢之一時發生此錯誤!我看到其他人也遇到了問題,我瀏覽了我見過的每個解決方案,但他們涉及更多的查詢,所以我很難挑出問題。我做了一張小桌子來說明我的問題。使用分組時的SQL錯誤:每個GROUP BY表達式必須包含至少一個不是外部引用的列
表名:grouptest
id name
1 Mel
2 Lucy
3 Mandy
4 Mel
5 Mandy
6 Mel
我想找出每個名字有多少次出現後,產生類似的表:
3 Mel
2 Mandy
1 Lucy
這是我想查詢應該工作:
SELECT Count(id), Name
FROM groupbytest
GROUP BY 'Name'
我得到的錯誤:
幫助!
是的!完美的工作:)如果你有時間,你能解釋爲什麼工作/是必要的嗎?也感謝你這麼快速的迴應。 – Mel 2012-07-31 18:56:29
@明白問題在於你試圖按照不允許的數據類型對數據進行分組。您的表格中有文本,ntext或圖像字段。您需要使用可以分組的數據類型。我使用'varchar(max)'將數據轉換爲允許的類型。你也可以將它轉換爲'nvarchar(max)'。 – Taryn 2012-07-31 18:58:26