当前位置:编程学习 > VB >>

不显示删除回复显示所有回复显示星级回复显示得分回复 送分100分:从一个用户的多条记录中提取一条记录的SQL语句

现有如下记录: 

序号 表号 户号 购电次数 剩余电量 总购电量 总用电量 
  1  22    1      0        33      2345    2312 
  2  22    1      0        443      2345    1902 
  3  22    1      1        23      0      887676 
  4  22    1      1        243      0      0 
  5  22    1      2        26      876      850 
  6  22    1      2        76      876      865 

现在的要求是:用SQL语句  从以上记录中按  (1)购电次数最高  (2)剩余电量最少  这两个条件提取出一条原始记录,也就是本例中的序号为5的那条记录,其字段包含表号 户号 购电次数 剩余电量 总购电量 总用电量 。 

谢谢大家。

--------------------编程问答-------------------- select top 1 * from Table Order by 购电次数 desc, 剩余电量 asc  (top 是access的语法,mysql要用limit的吧) --------------------编程问答-------------------- 最简单的办法,按(1)购电次数最高 降序,  (2)剩余电量最少 升序 排序!
第一条 --------------------编程问答-------------------- 最近怎么这么多电表的SQL
呵呵,不会都是同一个人吧:? --------------------编程问答-------------------- 最近怎么这么多电表的SQL
呵呵,不会都是同一个人吧:? --------------------编程问答-------------------- 是同一个人。谢谢。 --------------------编程问答-------------------- 重复帖,马甲不一样。看看我另一帖的回复
http://topic.csdn.net/u/20100205/20/675e5d68-8d7c-4bf6-99aa-b368343b0290.html?72628 --------------------编程问答-------------------- 什么数据库? --------------------编程问答--------------------
select a.*
from table1 a inner join (select 表号,max(购电次数) as max_购电次数 from table1 group by 表号) b
on a.表号=b.表号 and a.购电次数=b.max_购电次数
--------------------编程问答--------------------
select *
from table1 a
where not exists (select 1 from table1 where 表号=a.表号 and 购电次数>a.购电次数)
补充:VB ,  网络编程
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,