MySQL:如何仅使用一个查询获取表中不存在的ID的百分比

时间:2014-01-14 11:37:37

标签: php mysql sql performance percentage

实际上我正在使用两个查询来获取

  1. 表格中现有ID的总和
  2. 同一张表中缺少的ID
  3. 然后我使用PHP来计算此表中缺失ID的百分比。

    我确信有更好的方法,我正在搜索最好的方法,例如仅使用一个查询直接从mysql查询中获取百分比值并使用最快的表现

    假设我的表名是my_table,带有值的列名为id。 从1到*的列中只有唯一的ID,并且缺少某些ID。 示例行(值):1,2,3,4,7,8,9,22 ...... ....

    您认为哪个mysql查询是直接接收此表中缺失ID百分比的最佳方法?

2 个答案:

答案 0 :(得分:1)

   SELECT (MAX(id)-count(id)) / MAX(id) * 100 as MissingRate
    FROM my_table

答案 1 :(得分:0)

这将为您提供正确的百分比。它会计算它,因为你会看到每个丢失的数字,比如缺少数字。

SELECT Count(id)/MAX(id) as percent
    FROM my_table