登录
首页 >  数据库 >  MySQL

Mysql子查询作为查询字段,且查询结果起别名,在后续查询中引用别名进行计算。

来源:SegmentFault

时间:2023-01-16 09:36:21 425浏览 收藏

小伙伴们有没有觉得学习数据库很有意思?有意思就对了!今天就给大家带来《Mysql子查询作为查询字段,且查询结果起别名,在后续查询中引用别名进行计算。》,以下内容将会涉及到MySQL,若是在学习中对其中部分知识点有疑问,或许看了本文就能帮到你!

公司最近在做一个财务统计的模块。需要统计多个项目的回款金额,以及未回款金额。(回款需要申请以及审核,只有审核通过的回款才作为计算)
有如下数据库表:
1.company_project_item 项目表
关键字段:
proejct_no 项目编号
project_name 项目名称
project_contract_amount 项目合同金额(应总回款金额)
2.company_money_back 项目回款表
关键字段:
money 每次回款的金额
3.company_todo_list 待办事项表(即接收各个模块的申请,用于审核,比如:回款,请假)
关键字段:
flow_status 审核状态 ( 1为审核通过 )
sql语句组织思路:
首先想到的是以company_project_item为查询主表,使用子查询作为查询字段,将company_money_back中审核通过的回款金额sum()出总回款金额,然后将项目需要回款金额-已回款金额。
尝试sql语句(错误)如下:

clipboard.png

sql执行结果:total_money_back字段不存在。就是说起别名的字段,无法在接下来的查询字段中被引用。具体可参考mysql语句执行顺序,这里不再赘述。
正确sql语句如下:

clipboard.png

可参考连接:https://stackoverflow.com/que...

今天关于《Mysql子查询作为查询字段,且查询结果起别名,在后续查询中引用别名进行计算。》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表