当前位置:首页 » 编程语言 » 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
热点内容
宝马3系哪个配置合适 发布:2025-02-04 06:03:10 浏览:326
磁盘存储器的管理课后答案 发布:2025-02-04 05:58:58 浏览:598
b级车买哪个配置 发布:2025-02-04 05:56:41 浏览:560
我的世界如何看lp服务器 发布:2025-02-04 05:56:33 浏览:482
外卖盒子如何设置密码 发布:2025-02-04 05:49:33 浏览:506
国产安卓编程软件哪个最好 发布:2025-02-04 05:49:25 浏览:388
什么是身份证密码 发布:2025-02-04 05:43:41 浏览:785
云服务器江苏 发布:2025-02-04 05:38:46 浏览:238
算法及vb 发布:2025-02-04 05:33:37 浏览:102
安卓手机怎么自检电池 发布:2025-02-04 05:31:31 浏览:410