sql - 使用 group by 进行 sql 查询时出现错误

标签 sql sql-server sql-server-2005 group-by

我尝试运行如下 SQL 查询 (mssql 2005):

select top 20 d_date, date1, date2 
from reestr_calculated 
where reestr_id=2 
group by date2 
order by date2 desc

我收到以下错误:

Column 'reestr_calculated.d_date' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

有人知道我该如何处理这个错误吗?

最佳答案

除非您使用聚合函数,否则 SELECT 中出现的所有列名称都必须出现在 GROUP BY 中。因此,将 date1 也添加到 group by 中。

关于sql - 使用 group by 进行 sql 查询时出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17424343/

相关文章:

sql-server - SQL Server 2005查询XML时,文档的多个标签在同一行

mysql - MySQL 上的 0.07 秒查询在 MariaDB 上需要 11.68 秒?

MySql 自连接子内部连接返回交叉连接

sql-server - 将 Unix 文件导入 SQL Server 的最有效和可靠的方法

sql-server - Microsoft Synchronization Framework 之外的其他数据库同步工具?

asp.net - MSSQL DateDiff 两个日期之间以及所有行的平均耗时

mysql - 获取满足SQL中最左条件的第一条记录

mysql - 无法通过 Travis CI 上的套接字连接到本地 MySQL 服务器

mysql - 将 MSSQL 表转换为 MySQL 表

sql-server - 如何消除 SQL 生成的 XML 中多余的 namespace 声明?