,我發現了錯誤:簡單查詢中的sql錯誤?有任何想法嗎?
Column 'A10000012VICKERS.dbo.IMAGES.idimage' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
任何想法,爲什麼我會收到此錯誤或如何解決它?我以爲我只是要求大量的文件流列和其他兩個值的大小?
SELECT
idimage,
filetype,
SUM(DATALENGTH(filestreamimageoriginal)) AS original,
SUM(DATALENGTH(filestreamimagefull)) AS [full],
SUM(DATALENGTH(filestreamimageextra)) AS extra,
SUM(DATALENGTH(filestreamimagelarge)) AS large,
SUM(DATALENGTH(filestreamimagemedium)) AS medium,
SUM(DATALENGTH(filestreamimagesmall)) AS small, SUM(DATALENGTH(filestreamimagethumbnail)) AS thumbnail
FROM A10000012VICKERS.dbo.IMAGES WHERE display = 1
您是否搜索錯誤?這個問題之前已經被許多次問過很多次了。該錯誤消息也是不言自明的 – HoneyBadger
可能重複[SQL查詢與平均和組]通過(http://stackoverflow.com/questions/10702546/sql-query-with-avg-and-group-by) –
MySQL的GROUP BY擴展允許您在不使用group by的情況下執行聚合函數。這在大多數關係數據庫系統上不是標準行爲。通常情況下,不使用聚合的select中的任何內容都應該在group by中。在MySQL的情況下,它會爲idimage和fileyype選擇一個不確定的值並使用它(性能優勢)。如果idImage和filetype的所有值都相同,則不會出現問題,但如果它們不同,並且您希望查看每條記錄的idimage和filetype,則必須將這些值添加到組中。 – xQbert