2014-04-28 32 views
0

我需要找到某個範圍內的第一個整數(即2000 < = x < = 3000),該整數還不在表格的列中。這個想法是選擇2000到3000之間的第一個值,其中(值+ 1)不在列中。我應該如何爲此編寫查詢?或者可能有更好的方法來找到缺失的值?MySQL:選擇不在db中的值

+0

能詳細解釋與表模式? – Sadikhasan

回答

1

你可以嘗試這樣的事:

select 
    min(my_column) 
from 
    my_table 
where 
    my_column + 1 not in (select my_column from my_table) 
    and my_column > 2000 
    and my_column < 3000 
+0

這個問題並不完全清楚,但是它會在'my_column'(2000到3000之間)找到其中值+ 1不存在於同一列中的最低值。 – davur

+0

這將返回存在的最小值,如果您希望將第一個缺少的數字用MIN(my_column)+ 1替換爲MIN(my_column),則_before_缺少數字。 – davur