如何使用php mysql查找序列(表)中的缺失值(数字)

时间:2015-05-18 13:02:19

标签: php mysql

我需要编写一个查询来显示数据库表(书)中缺少的数字,它可以是一个或几个缺失的数字。

enter image description here

请注意序列中缺少值1,5,7,8和10,我尝试但我的解决方案不起作用。现在我正在寻找是否有人可以帮助我,我是这样的新人。

编辑: mysql

SELECT DISTINCT number FROM book
WHERE number BETWEEN 1 and (SELECT max(id) FROM book)
AND number NOT IN (SELECT id FROM book)

提前致谢。

此致 Kowts

1 个答案:

答案 0 :(得分:3)

这个PHP应该可以解决问题(假设$numbers是一个包含数据库中数字的数组)。

$compare_array = range(1, max($numbers));
$missing_values = array_diff($compare_array, $numbers);