题解 | #某店铺的各商品毛利率及店铺整体毛利率#

某店铺的各商品毛利率及店铺整体毛利率

http://www.nowcoder.com/practice/65de67f666414c0e8f9a34c08d4a8ba6

-- 商品毛利率=(1-进价/平均单件售价)*100%; -- 店铺毛利率=(1-总进价成本/总销售收入)*100%。

解题思路

  1. 首先联合三张表,用left join或join均可
  2. 筛选出来条件:901,时间大于2021-10(这里注意!我之前一直写的=2021-10,才发现题目是10月以来!),状态=1我觉得也挺重要,如果有退货退款,那就不能算进去(我回去把 status=1删除了,发现也可以通过,特来更新)
  3. 按照product_id分类
  4. 累加with rollup计算店铺汇总
  5. 筛选出来profit_rate>24.9或者product_id is Null(万一店铺汇总毛利率低于24.9,要避免这个情况,因为店铺汇总不管是多少都要输出)
  6. product_id排序
select 
	 ifnull(product_id,'店铺汇总') as product_id,
     concat(round((1-(sum(cnt*in_price))/(sum(cnt*price)))*100,1),'%') as profit_rate
from tb_order_detail tod
left join tb_product_info tpi
using(product_id)
left join tb_order_overall too
using(order_id)
where shop_id=901 and date_format(event_time,'%Y-%m')>='2021-10' and status=1
group by tod.product_id
with rollup #累加
having profit_rate>24.9 or** product_id is Null**#这一句很重要,参考了别人的才做出来
order by product_id
全部评论

相关推荐

政委qqq:这道题在算法竞赛里唯一考的就是高精度,但是只能难住C++这类语言,Python直接a+b秒天秒地
点赞 评论 收藏
分享
Kurumis:整个简历看下来就发现你其实对测试理解还很浅,很多地方都是硬凑上去,项目也是学生课设级别,没什么含金量 首先是学习建议: 1.系统性了解一个真实工程的框架,有利于你后续提升项目含金量,理解测试的逻辑 2.真正去学一下自动化测试和性能测试 再就是简历本身包装问题: 1.投测试的话就不要说自己独立开发自己测,专注描述自己怎么做测试的 2.项目经历太像套话,很容易让人怀疑你到底真的做过没有,比如并发是具体做了多少并发?自动化脚本是怎么跑兼容性和性能测试的?测试用例写了多少条? 3.教务管理系统一听就是数据库课设作业,含金量不高,不过你可以在原项目基础上重构扩展,比如添加docker容器部署MySQL和Redis,添加消息队列和锁机制防止系统扛不住高并发访问,让它真的像个实际工程 4.技能里性能专项测试没有把握不要乱写,就写你会什么工具就行了,做专项性能测试的都是行业大佬,你要写的话一定要有对应的专项性能测试项目 5.可以在简历里附上项目链接,压缩简历内容的同时提升简历真实性
今天你投了哪些公司?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务