sql-server - 根据某些特定条件计算损益
问题描述
我想做一个查询,如果销售价格大于成本价,则计算利润,当成本价大于销售价时计算损失。我在同一张表中有单独的销售价格和成本价格列。
saleprice costprice profit loss
5 6 0 1
10 5 5 0
我怎样才能实现这个功能?任何帮助将不胜感激。谢谢
解决方案
你可以使用CASE
:
SELECT *
,CASE WHEN costprice > saleprice THEN costprice - saleprice ELSE 0 END as loss
,CASE WHEN saleprice > costprice THEN saleprice - costprice ELSE 0 END as profit
FROM tab;
推荐阅读
- bash - 如何删除除最后一个以外的所有目录
- java - 使用 @ClassRule 从套件运行单个测试失败
- xpath - xpath:如何获得下一个节点(兄弟姐妹)
- vb.net - VB.net 应用程序没有在其他机器上启动
- django - Django 函数在 Chrome、Opera 和 Microsoft Edge 中工作,但在 FireFox 中不工作
- kubernetes - kubernetes 如何在 pod 内获取集群域(如 svc.cluster.local)?
- java - java - 如何在java中使用单个反斜杠重新生成文件中的任何值
- php - Mysql 与 group 命令的 group 行冲突问题
- excel - 自动筛选和停止宏中没有空白字段时的 Excel VBA 消息框
- tomcat - 带有捆绑 tomcat 的 ColdFusion 2018 与 Native Tomcat 上的 ColdFusion 2018