テーブル ログが 1 つあります。
checktype
---------
I
O
I
o
I
I
I
o
I
O
ここで、IとOをペアにする必要があるため、余分なIを削除します。つまり、1 つだけ(I または O) が必要です。テーブルには、 IとOのみをペアで含める必要があります。
テーブル ログが 1 つあります。
checktype
---------
I
O
I
o
I
I
I
o
I
O
ここで、IとOをペアにする必要があるため、余分なIを削除します。つまり、1 つだけ(I または O) が必要です。テーブルには、 IとOのみをペアで含める必要があります。
この結果は、次のクエリで簡単に取得できます。
Select checktype,((ROW_NUMBER() OVER (ORDER BY checktype))*2 - 1) as Row_id From Table
Where checktype = 'I'
UNION
Select checktype,((ROW_NUMBER() OVER (ORDER BY checktype))*2 ) as Row_id From Table
Where checktype = 'O'
Order by Row_id
私はそれをテストしました、そしてそれは私のために働いています
これを試して:
ResultSet rs = stmt.executeQuery("SELECT checkType FROM myTable");
while(rs.next( )){
if (rs.getString("checkType").equals('I'){
if(rs.next(){
if(rs.getString("checkType").equals('O'){
}else{
//delete logic
}
}
} else if(rs.getString("checkType").equals('O'){
if(rs.next(){
if(rs.getString("checkType").equals('I'){
}else{
//delete logic
}
}
}
}