sql语句的问题,请问这样的需求应该怎么查询

zoutuo 2010-05-31 08:01:42
数据库里:
id 父表ID 余额 应交 交款日期
1 1 200 100 2010-05-31
2 1 0 300 2010-05-20
3 1 0 150 2010-05-23
4 2 0 160 2010-01-08
5 2 100 100 2010-03-24
6 2 100 100 2010-05-24
7 2 100 100 2010-02-24
8 3 100 100 2010-02-28
9 3 100 100 2010-03-10
10 3 100 100 2010-01-15

需要查出每一个父表ID所对应最后一次交款日期的记录,结果应为:

1 1 200 100 2010-05-31
6 2 100 100 2010-05-24
9 3 100 100 2010-03-10

请问这样的sql语句应该怎么些?谢谢!
...全文
73 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dbx915 2010-05-31
  • 打赏
  • 举报
回复
我试过了,可以啊!不过是用的MySql
zoutuo 2010-05-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 buddhadalong 的回复:]

你用的什么数据库,
[/Quote]

oracle 自己解决了,谢谢大家的参与
1楼和4楼一看就不行,group by还能用*查吗?2楼的不知道用的什么函数。
不过还是谢谢
dbx915 2010-05-31
  • 打赏
  • 举报
回复
select id,父表ID, 余额,应交,max(交款日期) from tablename group by 父表ID;
buddhadalong 2010-05-31
  • 打赏
  • 举报
回复
你用的什么数据库,
kokobox 2010-05-31
  • 打赏
  • 举报
回复

select * from
(
select t.*,rank() over(partition by t.父表ID order by t.交款日期 desc) ro from your_table t
)
where ro=1


测试过,没问题
lq282514781 2010-05-31
  • 打赏
  • 举报
回复
SELECT * from tablename order by 交款日期 desc group by 父表id试下这句吧我也不太清楚还没睡醒脑子不是很清楚不对请见谅

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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