当前位置:首页 » 编程语言 » sql分组最后一条

sql分组最后一条

发布时间: 2025-02-04 03:38:24

‘壹’ sql分组后取最大日期的记录

用分析函数row_number来给分组内的记录编号,然后取编号值为1的记录即可。
select s.*
from (
select v.*, row_number() over (partition by b order by c desc) as order_num
from #b v
) s
where s.order_num = 1

‘贰’ sql分组后取最大日期的记录

select a.f_SPBM,a.f_kcsl
from tempTest a,
(
select f_SPBM,max(f_rq) f_rq
from tempTest
group by f_SPBM
) b
where a. f_SPBM = b. f_SPBM
and a.f_rq = b.f_rq

‘叁’ SQL 分组记录得到最后一个记录值

数据库问题记得要说是什么类型数据库
DB2/ORACLE
SELECT t.*
FROM (SELECT a.*, ROW_NUMBER() OVER(PARTITION BY 分组字段 ORDER BY 排序字段 DESC) RK
FROM tab) t
WHERE t.rk = 1

SQL通用方法:
SELECT t.*
FROM tab t
WHERE NOT EXISTS (SELECT 1 FROM tab
WHERE xxx = t.xxx AND xxx = t.xxxx(分组那些字段)
t.排序字段 > 排序字段)

‘肆’ sql先分组后排序的问题

selectregtime,ccountfrom(selectregtime,ccount,row_number()over(partitionbycasewhenccount=0then0else1endorderbyregtime)rn,casewhenccount=0then0else1endrkfrom表)torderbyrkdesc,rn

或者:

selectregtime,ccount,row_number()over(partitionbycasewhenccount=0then0else1endorderbyregtime)fromtmp
orderbycasewhenccount=0then0else1enddesc
热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:645
制作脚本网站 发布:2025-10-20 08:17:34 浏览:936
python中的init方法 发布:2025-10-20 08:17:33 浏览:632
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:821
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:731
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1066
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:299
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:160
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:852
python股票数据获取 发布:2025-10-20 07:39:44 浏览:763