mysql - 在选择中的计算中使用连接计数

标签 mysql sql join count

SELECT e.qty * e.unit_cost * e.unit_no * (e.factor/100) AS Ext_price, c.cost_type, c.cost_dt, c.internal_cost_amt, c.client_cost_amt
FROM equipment e
LEFT JOIN CostAllocation c ON (c.object_row_id = e.row_id)

我现在想用 Ext_price 除以与设备行匹配的 CostAllocation 行数。我该怎么做?

最佳答案

SELECT e.qty*e.unit_cost*e.unit_no*e.factor/(100*x.cnt) AS Ext_price,
       c.cost_type,
       c.cost_dt,
       c.internal_cost_amt,
       c.client_cost_amt
FROM equipment e
LEFT JOIN CostAllocation c ON c.object_row_id = e.row_id
LEFT JOIN
  (SELECT row_id,
          count(*) cnt
   FROM CostAllocation
   GROUP BY row_id) x ON c.object_row_id = x.row_id

关于mysql - 在选择中的计算中使用连接计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26602600/

相关文章:

Php PDO插入查询报错

SQL查询大约需要10 - 20分钟

r - 如何用 R 中另一个 tibble 的估算列替换 tibble 中的 NA 列

MySql电影预约系统设计

sql - 在 oracle 树查询中加入其他表

hadoop - 如何在 Pig 相同模式中加入 2 个数据集

MySQL 关系查询

php - 使用 extjs 在数组中更新 MYSQL,单个响应

php - 如何将删除按钮添加到将从 MySQL 表中删除行的 PHP 表单

MySQL加入其中一个字段周围的标签被剥离