关于如何只取得每组数据中的一个最大值的问题?

转载 2007年10月01日 13:38:00

 create table topic
(
Topicid
int,
title
nvarchar(10),
boardid
int,
addtime
datetime  
)
insert topic select
  
1,       'abc',       100,     '2007-1-1' 
union all select   2,       'era',       101,     '2007-1-2' 
union all select   3,       'avx',       102,     '2007-1-3' 
union all select   4,       'zcv',       100,     '2007-1-4' 
union all select   5,       'jhv',       100,     '2007-1-5' 
union all select   6,       'ztw',       103,     '2007-1-6' 
union all select   7,       'xcv',       102,     '2007-1-7' 
union all select   8,       'zww',       104,     '2007-1-8' 
union all select   9,       'zqw',       105,     '2007-1-9' 
union all select   10,      'zti',       103,     '2007-1-10' 

--取得boardid相同的每组数据日期最大值:

select top 5 *
from topic as tmp
where not exists(select * from topic where boardid=tmp.boardid and addtime>tmp.addtime) order by addtime desc
--result 相同boardid,addtime最大的数据
Topicid     title      boardid     addtime                                               
----------- ---------- ----------- ------------------------------------------------------
10          zti        103         2007-01-10 00:00:00.000
9           zqw        105         2007-01-09 00:00:00.000
8           zww        104         2007-01-08 00:00:00.000
7           xcv        102         2007-01-07 00:00:00.000
5           jhv        100         2007-01-05 00:00:00.000

(所影响的行数为
5 行)

 

select a.* from topic a,
(
  select boardid,max(addtime)as addtime from topic group by boardid
)b
where a.boardid=b.boardid and a.addtime=b.addtime
order by a.boardid

--result 相同boardid,addtime最大的数据
Topicid     title      boardid     addtime       

5              jhv          100          2007-01-05 00:00:00.000
2              era         101          2007-01-02 00:00:00.000
7              xcv          102          2007-01-07 00:00:00.000
10            zti           103          2007-01-10 00:00:00.000
8              zww       104          2007-01-08 00:00:00.000
9              zqw        105          2007-01-09 00:00:00.000

 


mysql获取分组后每组的最大值

1. 测试数据库表如下: create table test ( `id` int not null auto_increment, `name` varchar(20) not null de...

java操作mongodb(聚合函数)-分组找出每组的最大值

转自: http://blog.csdn.net/maosijunzi/article/details/42105927 数据库数据如下:   上代码: ...

[JAVA]给定一个整形数组,求其和、平均数、最大值及最小值、打印数组中的数据

给定一个整形数组,求其和、平均数、最大值及最小值、打印数组中的数据分析思路首先需要我们自己定义一组整形类数组,在这里直接使用数组的静态定义方法直接定义数组并赋值int[] a= {2,5,6,11,4...

【算法设计与数据结构】二分法解决最大值最小化问题——入门篇

问题描述把一个包含n个正整数的序列划分成m个连续的子序列。设第i个序列的各数之和为S(i),求所有S(i)的最大值最小是多少? 例子: 序列1 2 3 2 5 4划分为3个子序列的最优方案为 1 2...

MapReduce之求一组数据中最大值问题

一、题目要求:求出一组数据中的最大值。二、代码: import java.io.IOException; import java.util.Iterator; import java.util.Str...

【算法设计与数据结构】二分法解决最大值最小化问题—进阶篇— URAL 2034 Caravans

题目大意 一辆卡车从起点s到终点f,走的是最短路径。强盗从r出发前往卡车途经的某个点拦截,同样,强盗选择最近的点。卡车走的最短路径可能有多条,求最坏情况下强盗花费的时间。 简而言之,两个步骤: ...

解决Mybatis框架java.sql.SQLException: 数据大小超出此类型的最大值的问题

1.问题所在:  JDBC在转换过程中对字符串的长度做了限制。这个限制和数据库中字段的实际长度没有关系,JDBC对转换字符长度的限制是为了转换过程中的数据扩展。根据实际测试结果,在ZHS16GBK字...

oracle中number数据类型的存储以及最大值问题

Oracle的NUMBER类型最多由三个部分构成,这三个部分分别是最高位表示位、数据部分、符号位。其中负数包含符号位,正数不会包括符号位。另外,数值0比较特殊,它只包含一个数值最高位表示位80,没有数...
  • ZRRJDD
  • ZRRJDD
  • 2017年05月19日 10:24
  • 1531

数据结构(C#)--二叉查找树的先序,中序,后序的遍历问题以及最大值,最小值,插入,删除

// 学习小结  吴新强于2013年3月18日17:22:55 桂电 2057 实验室 using System; using System.Collections.Generic; using...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于如何只取得每组数据中的一个最大值的问题?
举报原因:
原因补充:

(最多只允许输入30个字)