1

T1つの属性、A整数を持つテーブルがあるとしましょう。

5が含まれている場合と含まれていないMAX(T) + 1場合にSQLクエリを返すにはどうすればよいですか?TMAX(T) + 2

4

3 に答える 3

2
SELECT MAX(a) + CASE WHEN (5 IN (SELECT a FROM t)) THEN 1 ELSE 2 END AS max_plus_something FROM t
于 2012-07-12T05:35:39.813 に答える
1
SELECT MAX(A) + MIN(CASE A WHEN 5 THEN 1 ELSE 2 END) AS NewA FROM T
于 2012-07-12T07:08:39.960 に答える
0

私は多くのケースをテストする機会がありませんが、これはあなたが望むことをすることができると思います。

declare @MinPosNI int;
set @MinPosNI = 1;
select @MinPosNI = case when (A - @MinPosNI) > 0 then @MinPosNI else A + 1 end from T     where A > 0 order by A 
select @MinPosNI
于 2012-07-12T06:59:21.453 に答える