도움말 !!!!!!! DB에서이 쿼리와 함께 2 개의 행이 있습니다. 아래의 코드와 결과 집합으로 행 수 얻기
SELECT D.DEALER_CODE
FROM SCOTT.T_DEALERSHIP D,SCOTT.T_DEALER_BILLING DB
WHERE D.DEALER_CODE = DB.DEALER_CODE
AND DEALER_NAME LIKE 'XTIME%'
AND (RNR_CUST_NUM = '546' OR RNR_CUST_NUM = '43356'OR RNR_CUST_NUM = '7637055' OR RNR_CUST_NUM ='7637055' OR RNR_CUST_NUM IS NULL)
AND (RCI_STORE_NUMBER IS NULL OR RCI_STORE_NUMBER = '05')
AND (RCI_AREA_NUMBER = '01'OR RCI_AREA_NUMBER IS NULL)
AND (RCI_DEALER_NUMBER IS NULL AND DEALER_Address1 LIKE UPPER('1500 ORACLE%')
AND DEALER_CITY =UPPER('BAKERSFIELD') AND DEALER_ZIP LIKE'6%')
, 나는 DB에서 2 개 레코드가 경우에만 1 행을 얻을. DB에 하나의 레코드 만있을 때 작동하지만 더 많은 레코드가있는 경우에는 작동하지 않습니다. 또한
rs.last()
메서드는 건너 뛴 다음 결과 집합을 종료합니다. 하나의 레코드에 대해 실행하려면 주석을 달아야합니다.
COUNT
을 사용하고 싶지 않습니다. 당신이 원하는 모든 데이터베이스의 레코드를 계산하는 경우
ResultSet rs = stmt.executeQuery(sql1);
System.out.println("" + sql1);
while(rs.next()) {
rs.last();
int Rows = rs.getRow();
System.out.println("Rows are " + Rows);
}
'마지막()'상태 : 당신이 원하는 마십시오 object.''이 ResultSet의 마지막 행으로 커서를 이동? –
아닙니다. 예상치 못한 결과가 나오면 원하지 않습니다. 내가 원한 것은 DB의 레코드 수입니다. 0/1/1보다 큰 경우. 내가 코멘트하면 프로그램이 실행되지만 두 개 이상의 레코드가있을 때 정확한 카운트를 제공하지 않습니다. – user2805281
왜 계산하지 않으시겠습니까? 그것이 바로 당신이 필요로하는 것입니다. 따라서 귀하의 질의가 백만 줄과 일치하는 경우, 귀하의 앱에 백만 개를 반환하여 그 중 몇 개가 있는지 계산하고 싶습니까? – Brandon