2

これに似たテーブルがあります。

creation_time           po_S            count_out_I
2012-08-03 02:45:02.133 000002029382    15974
2012-08-03 02:48:02.083 000002029382    9475
2012-08-03 02:51:02.097 000002029382    15978
2012-08-03 02:54:02.120 000002029382    15990

creation_time で並べ替えたときに、count_out_I が前の行よりも小さい行を見つける必要があります。データベースは SQL Server 2008 です。助けていただければ幸いです。

4

1 に答える 1

4

これは、減少する最初の行を報告しcount_out_Iます:

; with  numbered as
        (
        select  row_number() over (order by creation_time) as rn
        ,       *
        from    YourTable
        )
select  top 1 cur.*
from    numbered cur
join    numbered prev
on      prev.rn + 1 = cur.rn
where   cur.count_out_I < prev.count_out_I
order by
        cur.rn
于 2012-08-06T12:08:36.050 に答える