,我发现了错误:简单查询中的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