CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  应用实例

高手帮忙---取得表中最大数据的sql语句

楼主lirlir(hgug)2005-06-03 09:35:41 在 MS-SQL Server / 应用实例 提问

数据表  
  a     int  
  b     int  
  c     int  
   
  例如  
  a       b       c  
  1       1       10  
  1       2       3    
  2       1       2  
  3       1       78  
  3       2       34  
  3       4       21  
   
  现在我要写sql语句,根据每个字段a的b的最大值,列出字段a的c值  
  即想得出的结果为  
  a       b       c  
  1       2       3  
  2       1       2  
  3       4       21  
   
  请教大哥帮忙 问题点数:0、回复次数:8Top

1 楼poolnet()回复于 2005-06-03 09:41:51 得分 0

select   a,max(b),max(c)   from   tablename   group   by   aTop

2 楼lirlir(hgug)回复于 2005-06-03 09:46:05 得分 0

poolnet,c不是max(c),是max(b)的值!你那样子不行的Top

3 楼poolnet()回复于 2005-06-03 09:48:24 得分 0

max(b)就是b取大啊,max(c)就是c取大啊如果C存在重复,有何不对  
   
  select   a,max(b)   as   b,max(c)   as   c   from   tablename   group   by   a  
  Top

4 楼guanjm(坚持到底)回复于 2005-06-03 09:49:02 得分 0

select   a.*   from   tablename   a  
  inner   join    
  (  
      select   a,max(b)   as   b   from   tablename   group   by   a  
  )   b  
  on   b.a=a.a   and   b.b=a.b  
  这样就可以了Top

5 楼poolnet()回复于 2005-06-03 09:49:55 得分 0

是我错了,呵呵Top

6 楼yjdn(人形机器)回复于 2005-06-03 09:52:40 得分 0

select   a,max(b),(select   c   from   tn   where   a=a.a   and   b=max(a.b))   from   tn   a   group   by   aTop

7 楼yjdn(人形机器)回复于 2005-06-03 09:53:58 得分 0

--建表  
  create   table   tn(a   int,     b   int,       c   int)  
  insert   into   tn   select   1     ,   1     ,   10  
  union   all   select    
  1     ,   2   ,     3    
  union   all   select    
  2     ,   1   ,     2  
  union   all   select    
  3       ,1     ,   78  
  union   all   select    
  3       ,2     ,   34  
  union   all   select    
  3       ,4     ,   21  
   
  --查询  
  select   a,max(b),(select   c   from   tn   where   a=a.a   and   b=max(a.b))   from   tn   a   group   by   a  
   
  结果  
  1 2 3  
  2 1 2  
  3 4 21  
  Top

8 楼lirlir(hgug)回复于 2005-06-03 10:29:54 得分 0

谢谢,解决Top

相关问题

  • ////请问:ACCESS数据库清空表数据的SQL语句////
  • 用sql语句查询数据表中有哪些字段是什么语句?
  • 如何用SQL语句复制表和表中的数据???急!!!
  • 如何实现sql语句复制数据表结构的?
  • 通过SQL语句查看数据库中所有表名
  • 执行sql语句删除表的数据的操作问题
  • 如何用SQL语句拆分数据表
  • 怎么用sql语句随机取一个表的数据?
  • 请教如何得到数据表结构的sql语句。
  • 用SQL语句转换表里的数据问题

关键词

  • tn
  • max
  • union
  • tablename
  • group
  • select

得分解答快速导航

  • 帖主:lirlir

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo