计算列以进一步在mysql查询中使用

时间:2019-09-10 19:23:07

标签: mysql sql

我想知道如何使用sql查询中已经计算的两列从它们的值中获取更多结果。 我的查询是

SELECT s.date date
     , p.id
     , SUM(COALESCE(p.avgcost,0)) costofsale
     , SUM( COALESCE(s.actual_payable, 0 ) ) total_sales
     , (total_sales - costofsale) tots 
  FROM sales s
  LEFT 
  JOIN sale_items si 
    on si.sale_id = s.id 
  LEFT 
  JOIN products p 
    on p.id = si.product_id 
 WHERE DATE(s.date) =  DATE('2019-09-10 14:48:50')

我想从total_sales中获得结果-已经在查询中计算出的costofsale。

我不想更改或更新我的表。

我只需要使用这两列就可以通过计算得出结果。

我在Google上找不到任何解决方案。

1 个答案:

答案 0 :(得分:0)

MySQL 8包含WITH语句,该语句允许在不使用变量的情况下创建计算值。

WITH statement VS subquery