社区
MS-SQL Server
帖子详情
如何取一组数据中最大的一条记录。
ralphchen
2005-06-22 03:54:57
以字段A分组,取C中最大的记录
假如表结构(字段A,B为varchar型,C为日期型)
A B C
1.1 问题1 2005-1-1
1.1 问题9 2005-1-2
1.2 问题2 2005-2-1
1.3 问题3 2005-1-1
; ; ;
; ; ;
; ; ;
结果是:
A B C
1.1 问题9 2005-1-2
1.2 问题2 2005-2-1
1.3 问题3 2005-1-1
; ; ;
; ; ;
; ; ;
...全文
217
9
打赏
收藏
如何取一组数据中最大的一条记录。
以字段A分组,取C中最大的记录 假如表结构(字段A,B为varchar型,C为日期型) A B C 1.1 问题1 2005-1-1 1.1 问题9 2005-1-2 1.2 问题2 2005-2-1 1.3 问题3 2005-1-1 ; ; ; ; ; ; ; ; ; 结果是: A B C 1.1 问题9 2005-1-2 1.2 问题2 2005-2-1 1.3 问题3 2005-1-1 ; ; ; ; ; ; ; ; ;
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
paoluo
2005-06-28
打赏
举报
回复
那试试这样。
相同的A,为Null的C应该不会超过一条吧。
Select * from TableName A Where C Is Null
Union All
Select * from TableName A Where Not Exists (Select 1 from Tablename Where A=A.A And C>A.C) And Not Exists(Select 1 from Tablename Where A=A.A And C Is Null)
ralphchen
2005-06-28
打赏
举报
回复
楼上的可能没有懂我的意思,按照sql server 的默认排序规则,NULL是最小(也就是最前)的时间,我现在要把它当作最大的时间。
zlp321002
2005-06-28
打赏
举报
回复
--NULL的日期也能为最大??应该吧NULL踢出掉才对吧!
select a.* from 表 a
where C=(select top 1 c from 表 where A=a.A order by c desc)
ralphchen
2005-06-28
打赏
举报
回复
如果c的日期中有NULL,而且他被认为是最大的日期,那该如何实现现case中结果不可以为null
子陌红尘
2005-06-22
打赏
举报
回复
select
t.*
from
tabname t
where
not exists(select 1 from tabname where A = t.A and C > t.C)
paoluo
2005-06-22
打赏
举报
回复
第一种和风云的效率较高。
paoluo
2005-06-22
打赏
举报
回复
Select * from TableName A Where Not Exists (Select 1 from Tablename Where A=A.A And C>A.C)
pbsql
2005-06-22
打赏
举报
回复
select t.*
from t,(select a,c=max(c) from t group by a) x
where t.a=x.a and t.c=x.c
paoluo
2005-06-22
打赏
举报
回复
Select * from TableName A Inner Join (Select A,Max(C) As C from TableName Group By A)B On A.A=B.A And A.C=B.C
SQL
取
分组内
最大
的
一条
记录
实现流程
在MySQL
数据
库
中
,我们经常需要对
数据
进行分组并获
取
每个分组内的
最大
值,并且只需要获
取
每个分组内
最大
值对应的
一条
记录
。在步骤一的基础上,我们需要获
取
每个分组内的
最大
值。在步骤二的基础上,我们需要将原始表...
oracle
中
SQL分组函数
取
每组
中
时间
最大
的
一条
数据
最近在做项目
中
,有一个需求需要查询根据合同的状态去修改对应的业务单对应的状态,合同和业务单存在同一张表
中
,而且同一个业务A可能存在多条业务单的情况,需要
一条
SQL查询出每条业务对应的日期最新的那条业务单来...
java lambda
数据
库 分组排序
取
最大
一条
记录
(组内排序
取
最大
一条
)
java lambda
数据
库 分组排序
取
最大
一条
记录
(组内排序
取
最大
一条
)
Mysql 分组后
取
时间
最大
的
一条
记录
Mysql 分组后
取
时间
最大
的
一条
记录
MySQL5.7用group by分组根据组
中
某个字段的
最大
值求
取
那条
记录
(注意是整条
记录
)
首先注意,
取
每组
最大
的
数据
和
取
每组
最大
的
一条
记录
是两个概念,前者很简单直接分组,max()即可。另外由于我的是5.7.24版本,5.7版本普遍存在一个问题,就是select的字段只能是groupby后面出现的字段
中
的,不然...
MS-SQL Server
34,838
社区成员
254,631
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章