SQL找某个字段最大的记录或连接

有一种经常遇到的情况可以小结一下,比如一个表中一个account_id对应多个loan_id,这个时候找最大的loan_id那条记录就是形如

SELECT DISTINCT ON(account_id),loan_id,XXX FROM table ORDER BY account_id,loan_id DESC

ORDER BY 后的第一个字段要和SELECT DISTINCT ON的字段匹配;

还有一种就是子查询连表的时候,比如通过account_id连接,但是只要loan_id最新的一条,这个时候形如:

SELECT * FROM table1
LEFT JOIN table2 
ON table2.pk = (select pk from table2 where account_id = table1.account_id order by loan_id DESC limit 1)
注意,连接条件必须找主键,不然可能出现一对多的情况

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值