取得最新数据

Jason_guo 2012-12-02 09:40:56
某个表,有如下字段:
企业编号,年,月,评分

要求获得最新年月的所有企业的评分(最新那个)
也就是说,有2013和2012的数据就取2013的,有12月的和11月的就取12月的。
一个企业编号的数据只要一条,就是要最新的这条。
...全文
164 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vidor 2012-12-03
  • 打赏
  • 举报
回复
引用 7 楼 DBA_Huangzj 的回复:
引用 4 楼 Vidor 的回复:引用 2 楼 DBA_Huangzj 的回复:谁说我不在乎分的啊。SQL code??123456789101112SELECT * FROM tb a WHERE EXISTS ( SELECT 1 FROM ( SELECT MAX(年) 年 , ……
对不起啊,是我搞错了,万分抱歉!
-晴天 2012-12-02
  • 打赏
  • 举报
回复
如果是2005,那 create table 企业表(企业编号 int,年 int,月 int,评分 int) insert into 企业表 select 1,2011,3,81 union all select 1,2012,6,82 union all select 1,2013,8,83 union all select 1,2012,12,84 union all select 1,2011,4,86 union all select 1,2015,7,87 union all select 1,2014,6,88 union all select 1,2013,2,89 union all select 1,2015,3,90 union all select 1,2012,9,91 union all select 1,2011,12,92 union all select 2,2014,6,88 union all select 2,2013,2,89 union all select 2,2015,3,90 go select * from( select *,row_number()over(partition by 企业编号 order by 年 desc,月 desc) as rn from 企业表 )t where rn=1 /* 企业编号 年 月 评分 rn ----------- ----------- ----------- ----------- -------------------- 1 2015 7 87 1 2 2015 3 90 1 (2 行受影响) */ go drop table 企业表
Jason_guo 2012-12-02
  • 打赏
  • 举报
回复
引用 12 楼 qianjin036a 的回复:
引用 6 楼 Jason_guo 的回复:稍稍问一声,您那个表,单个企业在一年的一个月里,会有几条数据? 一个月只有一个数据,但是填写的时间不确定。要最后的评分 。。。。 如果一个月只有一个数据,如果这个月份和年份的数据类型是int 型的,则这样可能大概或许能满足您的要求: select * from tb a where not exists(select ……
是的,这条应可以,我测试了几个数据都没问题 。谢谢
-晴天 2012-12-02
  • 打赏
  • 举报
回复
引用 6 楼 Jason_guo 的回复:
稍稍问一声,您那个表,单个企业在一年的一个月里,会有几条数据? 一个月只有一个数据,但是填写的时间不确定。要最后的评分 。。。。
如果一个月只有一个数据,如果这个月份和年份的数据类型是int 型的,则这样可能大概或许能满足您的要求: select * from tb a where not exists(select 1 from tb where 企业编号=a.企业编号 and convert(datetime,ltrim(年)+'-'+ltrim(月)+'-01')>convert(datetime,ltrim(a.年)+'-'+ltrim(a.月)+'-01'))
Jason_guo 2012-12-02
  • 打赏
  • 举报
回复
Vidor 的方案应该是可以的,我测试了几十次。都应该没问题的了。
Jason_guo 2012-12-02
  • 打赏
  • 举报
回复
有ID,但我不想用 ORDER BY ID DESC ,因为有时候会填写上几个月的数据
Jason_guo 2012-12-02
  • 打赏
  • 举报
回复
mssql 2005, 企业编号是整形。年是整形,月是整形,评分是 float
-晴天 2012-12-02
  • 打赏
  • 举报
回复
另外,您的那个年,月,是什么数据类型? 还有,您这个表就些列了吗,没有个ID什么的列么? 还有,您的MSSQL是什么版本的? 还有,您建的确这个查询语句是放在哪儿执行的?查询分析器?MSSQL Management Studio?
發糞塗牆 2012-12-02
  • 打赏
  • 举报
回复
引用 4 楼 Vidor 的回复:
引用 2 楼 DBA_Huangzj 的回复:谁说我不在乎分的啊。SQL code??123456789101112SELECT * FROM tb a WHERE EXISTS ( SELECT 1 FROM ( SELECT MAX(年) 年 , ……
为啥要join?单表查询没必要啊,把你的表结构和数据拿出来看看,我还幻想不出你的表和数据的样子。
Jason_guo 2012-12-02
  • 打赏
  • 举报
回复
稍稍问一声,您那个表,单个企业在一年的一个月里,会有几条数据? 一个月只有一个数据,但是填写的时间不确定。要最后的评分 。。。。
-晴天 2012-12-02
  • 打赏
  • 举报
回复
稍稍问一声,您那个表,单个企业在一年的一个月里,会有几条数据?
Vidor 2012-12-02
  • 打赏
  • 举报
回复
引用 2 楼 DBA_Huangzj 的回复:
谁说我不在乎分的啊。SQL code??123456789101112SELECT * FROM tb a WHERE EXISTS ( SELECT 1 FROM ( SELECT MAX(年) 年 , MAX(月) 月 , ……
在乎分也要思维严密点吧,你这种方法应该用join才是正确的,exists是错误的,你认为呢版主大人?
Jason_guo 2012-12-02
  • 打赏
  • 举报
回复
呵呵,你都是版主了,还这么在意分数吗?呵呵呵 。。。。我还有 2000多分,都是8 9年前剩下的了。
發糞塗牆 2012-12-02
  • 打赏
  • 举报
回复
谁说我不在乎分的啊。
SELECT  *
 FROM    tb a
 WHERE   EXISTS ( SELECT 1
                  FROM   ( SELECT    MAX(年) 年 ,
                                     MAX(月) 月 ,
                                     企业编号
                           FROM      tb
                           GROUP BY  企业编号
                         ) b
                  WHERE  a.月 = b.月
                         AND a.年 = b.年
                         AND a.企业编号 = b.企业编号 )
Vidor 2012-12-02
  • 打赏
  • 举报
回复
select * from tb t where not exists (select 1 from tb where 企业编号=t.企业编号 and 年*100+月>t.年*100+t.月)
Transformer发轫于NLP(自然语言处理),并跨界应用到CV(计算机视觉)领域。 Swin Transformer是基于Transformer的计算机视觉骨干网,在图像分类、目标检测、实例分割、语义分割等多项下游CV应用中取得了SOTA的性能。该项工作也获得了ICCV 2021顶会最佳论文奖。本课程将手把手地教大家使用labelme标注和使用Swin Transformer训练自己的数据集进行图片和视频的实例分割。  本课程将介绍Transformer及在CV领域的应用、Swin Transformer的原理。 本课程以汽车驾驶场景图片和视频开展项目实践:对汽车行驶场景中的路坑、车、车道线进行物体标注和实例分割。  课程在Windows和Ubuntu系统上分别做项目演示。包括:安装软件环境、安装Pytorch、安装Swin-Transformer-Object-Detection、标注自己的数据集、准备自己的数据集、数据集格式转换(Python脚本完成)、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计、日志分析。  本课程提供项目的数据集和相关Python程序文件。相关课程: 《Transformer原理与代码精讲(PyTorch)》https://edu.csdn.net/course/detail/36697《Transformer原理与代码精讲(TensorFlow)》https://edu.csdn.net/course/detail/36699《ViT(Vision Transformer)原理与代码精讲》https://edu.csdn.net/course/detail/36719《DETR原理与代码精讲》https://edu.csdn.net/course/detail/36768《Swin Transformer实战目标检测:训练自己的数据集》https://edu.csdn.net/course/detail/36585《Swin Transformer实战实例分割:训练自己的数据集》https://edu.csdn.net/course/detail/36586《Swin Transformer原理与代码精讲》 https://download.csdn.net/course/detail/37045

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧