问题: sql 获取每个分组不为零的最小值的整条记录 mssql 2000

解决方案1:

引用 3 楼 shoppo0505 的回复:
用RowNumber  order by 要取得值, 然后取 rownumber = 1的数据行

SQL Server2000 没有 row_number
解决方案2:

用RowNumber  order by 要取得值, 然后取 rownumber = 1的数据行

解决方案3:

select * ffrom tb a, (select 组,  min(值) as 值 from tb where 值 <> 0 group by 组) b
where a.组 = b.组 and a.值 = b.值

解决方案4:

如列值有重复时需要加上其它分组里有唯一性列过滤
e.g.

--分组列:groupcol 列值:ID
SELECT  *
FROM    table1 AS a
WHERE   a.id > 0
        AND NOT EXISTS ( SELECT 1
                         FROM   table1
                         WHERE  groupcol = a.groupcol
                                AND id < a.id
                                AND id > 0 );

上一篇请教bcp生成文本文档并导出数据问题
下一篇MSSQL EXPRESS能否支持局域网访问
明星图片
相关文章
《 sql 获取每个分组不为零的最小值的整条记录 mssql 2000》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)