我想找到“每个组件发生更换的次数”的计数。

例如,

Component_ID | Replacement_ID
001          |    NULL
002          |     001
003          |     002
004          |     003
005          |     Null


结果:

Component_ID | Number of time a replacement already occurred
   004       |    3
   005       |    0

最佳答案

通常,您应该至少有两个表。一个组件表,其中包含以Component_ID作为主要字段的组件以及其他字段(例如component_name)和另一个可能称为component_replacements的表,该表包含一个主要字段ID(例如component_replacement_id)以及component_id和其他字段(例如替换日期)。 Component_id在此表中可以出现多次。这将允许您进行基本查询,例如:

SELECT Component_ID, IFNULL( total,0) replacements FROM
            (
              SELECT Component_ID, COUNT(*) total
                   FROM component_replacements GROUP BY Component_ID
            ) replacements ON components.Component_ID = replacements.Component_ID

关于mysql - 计算组件更换次数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49506622/

10-11 01:32