mysql外表内表_mysql 子查询 将最外表带入子查询内2层 的另一种解决方法

本文讨论了如何通过使用子查询和distinct关键字优化SQL查询,以准确计算Borrow_LIST中未删除记录的每个LOAN_USER_ID对应的活跃用户数,避免了多结果和复杂嵌套。同时,提供了两种简化查询的方法,以提高数据获取的效率和准确性。
摘要由CSDN通过智能技术生成

SELECT (

select count(*)  from  BORROW_LIST

where DELETE_FLAG=0 and BORROW_ID=c.BORROW_ID

group by  LOAN_USER_ID

) as cyrs_COUNT,sum(...)  ....

from  BORROW c

这样查出来的数量是多个结果,无法对应其他字段  ,并且数据 并不是总人数

LOAN_USER_ID      USER_NAME     ..................

1                            啊啊啊

23                           啵啵啵

23                           纯纯粹粹

35                          点点滴滴

但是如果写成下面这样 的话 是无法取到c.BORROW_ID 的

SELECT (select count(*) from (

select count(*)  from  BORROW_LIST

where DELETE_FLAG=0 and BORROW_ID=c.BORROW_ID

group by  LOAN_USER_ID) d

) as cyrs_COUNT,sum(...)  ....

from  BORROW c

那么只有这样了~~~~~换个方法

SELECT (

select count(distinct(LOAN_USER_ID))  from  BORROW_LIST

where DELETE_FLAG=0 and BORROW_ID=c.BORROW_ID

) as cyrs_COUNT,sum(...)  ....

from  BORROW c

这样就不用再套一层子查询了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值