这样的SQL语句怎么写?(30分)

  • 主题发起人 主题发起人 我行我酷
  • 开始时间 开始时间

我行我酷

Unregistered / Unconfirmed
GUEST, unregistred user!
一个表ac内容如下 ;
用户名 本次收入金额 本次支出金额 累计余额 操作时间
A 200 0 1300 2006-05-25
B 100 0 400 2006-05-25
A 0 100 1200 2006-05-26
B 100 0 500 2006-05-27
c 300 0 900 2006-06-09
A 0 100 1200 2006-05-29
D 200 0 700 2006-07-26
c 0 100 900 2006-06-12

这样的表,我想取表中所有用户的最后一条操作记录,这样的SQL语句怎么写
 
备注:每个用户操作的时间是不会重复的...
 
没人知道吗/帮帮忙嘛
 
select a.* from ac a ,(select 用户名,MAX(操作时间) as 操作时间 from ac group by 用户名) B where a.用户名=b.用户名 AND a.操作时间=b.操作时间
 
楼上的SQL应是可以的,我来骗点分。
select * from ac where (用户名,操作时间) in
(select 用户名 ,max(操作时间) from ac group by 用户名);
 
楼上的SQL语句很好。
 
没赶上,被楼上的答了
 
不要用in 這個關鍵字,這樣數度會慢的,但是如果沒有大量數據一般是看不出來的
 
晕,不是说每个用户操作的时间是不会重复的吗?那直接用select * from ac where 操作时间=2006-05-25
这样行吗?
我是菜鸟,上面的只是我的看法
 
to 520qiaojian
那個錯了
where 操作时间=2006-05-25
就只可以找到2006-05-25那些記錄
不是所布人的最新記錄
因此
用max(操作时间)+group by(用户名)就可以了

我會用(不知道行不行)
select * from table where
操作时间=(select max(操作时间) from table where 用户名 in(select 用户名 from table group by 用户名))
 
源代码搜索引擎
http://www.codesearch.com.cn/
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
860
import
I
I
回复
0
查看
699
import
I
I
回复
0
查看
795
import
I
后退
顶部