葬空吟 2021-12-09 12:09 采纳率: 61.2%
浏览 38
已结题

mysql 怎么查询两个值的where条件不同

我想要得到的 B 值是 ROUND( sum( DEFNUM ) / COUNT( DISTINCT CHASSISNUMBER ), 2 ),其中
COUNT( DISTINCT CHASSISNUMBER )的where 条件是以下条件

 carModel='XXX'  and DATE_SUB(CURDATE(), INTERVAL 117 DAY) <= date(riqi) group by riqi ORDER BY riqi DESC

和 where 条件是以下条件的 sum( DEFNUM )

carModel='XXX' and 专业= 'PP'  and  defectRank='B' and DATE_SUB(CURDATE(), INTERVAL 117 DAY) <= date(riqi) group by riqi ORDER BY riqi DESC

我按照下面的代码查询的结果, CHASSISNUMBER 也经过 专业= 'PP' 和 defectRank='B' 筛选

SELECT riqi as date, ROUND( sum( DEFNUM  ) / COUNT( DISTINCT CHASSISNUMBER ), 2 ) AS B, 基础值,挑战值 FROM 表名 WHERE  carModel='XXX' and 专业= 'PP'  and  defectRank='B' and DATE_SUB(CURDATE(), INTERVAL 117 DAY) <= date(riqi) group by riqi ORDER BY riqi DESC

求问应该怎么写能得到我想要的 B 值
PS:表结构如下图所示

img

  • 写回答

1条回答 默认 最新

  • 葬空吟 2021-12-09 17:26
    关注

    我用了个土办法,先分别查询sum( DEFNUM )和CHASSISNUMBER ,再通过left join和关联字段进行表连接

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月18日
  • 已采纳回答 12月10日
  • 修改了问题 12月9日
  • 创建了问题 12月9日

悬赏问题

  • ¥15 hexo+github部署博客
  • ¥15 求螺旋焊缝的图像处理
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?