#title CSV형태의 컬럼에서 이빨빠진 가장 작은 숫자 찾기 [http://www.sqler.com/483769#1 문제] {{{ 컬럼에 데이터가 '2, 7, 3, 5, 9, 1, 0 ' 와 같이 들어가 있다. 이 컬럼에는 0 ~ 9까지의 숫자가 들어올 수 있는데, 숫자의 순서는 무자위이며, 0 ~ 9의 숫자가 모두 포함된 것은 아니다. 위의 예의 경우 답은 4가 나와야 한다. }}} 솔루션 {{{ create table #temp(val varchar(30)) insert #temp values('2, 7, 3, 5, 9, 1, 0 ') select min(a.val) from ( select 0 val union all select 1 val union all select 2 val union all select 3 val union all select 4 val union all select 5 val union all select 6 val union all select 7 val union all select 8 val union all select 9 val ) a cross join #temp b where charindex(convert(char(1), a.val), b.val) = 0 }}} csv형태가 아니라 row로 펼쳐진 형태라면.. {{{ with dummy as ( select 0 num union all select 1 num union all select 2 num union all select 3 num union all select 4 num union all select 5 num union all select 6 num union all select 7 num union all select 8 num union all select 9 num ), rd(num) as ( select 2 union all select 7 union all select 3 union all select 5 union all select 9 union all select 1 union all select 0 ) select min(a.num) from dummy a left join rd b on a.num = b.num where b.num is null }}}