摘要:
今天在公司写代码的时候,遇到一个sql语句构建问题。情形是这样的:我需要获取不同小组下前N条记录。select top 10 * from dbo.Topic where GroupID in (60034,60037) and State=0 order by CrtTime desc很明显,这是错的,不仅没group by,获取出来的还是按两个小组的创建时间的前10条数据。可是,用group by的话,它有个很不通人性的特性。即是——凡是在group by后面出现的字段,必须同时在select后面出现;凡是在select后面出现的、同时未在聚合函数中出现的字段,必须同时出现在group b 阅读全文