mysql 子查询 将最外表带入子查询内2层 的另一种解决方法
2016-03-08 14:16
573 查看
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
这样就不用再套一层子查询了
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
这样就不用再套一层子查询了
相关文章推荐
- MySQL基本命令 (一)
- MySQL 慢查询日志分析及可视化结果
- mysql远程连接命令
- mysql存储过程详解
- 在Ubuntu上部署开源博客系统Blog_mini 推荐
- 远程连接到vultr vps的mysql服务器
- 在Ubuntu上使用apt-get安装MySQL+安全优化
- MySQL 数据库性能优化之SQL优化
- PowerDesigner连接MySQL,建立逆向工程图解
- mysql创建存储过程
- Mysql 文件配置(my.ini)
- mysql慢查询日志分析
- mysql中间件atlas的相关问题
- 妥妥解决MySqL中文乱码问题,就这么任性
- MYSQL where 1=1 的作用
- MySQL source 命令
- mysql解压版安装
- MySQL中外键设置详解
- mysql 错误代码 1045 解决
- mysql 优化之innodb_flush_log_at_trx_commit