sql的问题 :查询的结果作再筛选

一句sql可以写出来嘛?

clipboard.png

SELECT pap., pm.,COUNT(pap.user_id) tzCount,SUM(pap.invest_amount) tzAmout
FROM tb_pro_attended_apply pap LEFT JOIN tb_pro_main pm ON pap.pro_id=pm.id
WHERE 1=1
GROUP BY pap.pro_id ORDER BY pap.apply_time

现在我要筛选tzAmout >10的为什么不行

这是子查询的结果
clipboard.png

clipboard.png

clipboard.png

clipboard.png

阅读 5.2k
1 个回答

SELECT pap., pm.,COUNT(pap.user_id) tzCount,SUM(pap.invest_amount) tzAmout

    FROM tb_pro_attended_apply pap LEFT JOIN tb_pro_main pm ON pap.pro_id=pm.id  
    WHERE 1=1
    
    GROUP BY pap.pro_id 
    HAVING 1=1
    <if test="minAmout != null and minAmout !='' ">
    <![CDATA[and tzAmout >= ${minAmout}  ]]>
   </if>
   <if test="maxAmout != null and maxAmout !='' ">
        <![CDATA[and tzAmout <= ${maxAmout}  ]]>
   </if>
   <if test="minC != null and minC !='' ">
    <![CDATA[and tzCount >= ${minC}  ]]>
   </if>
   <if test="maxC != null and maxC !='' ">
        <![CDATA[and tzCount <= ${maxC}  ]]>
   </if>
    ORDER BY pap.apply_time 
      <if test="startIndex != null ">
   limit #{startIndex}<![CDATA[,]]>#{pageSize}
       </if>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题