아래 쿼리 쿼리를 사용하여 일부 값을 설정하고 데이터 흐름을 제어합니다. 그러나 벨로우 쿼리를 실행할 때 condtion (하위 쿼리)에서 "값이 너무 깁니다"오류가 발생합니다.여러 행에 대한 쿼리 업데이트 문제
UPDATE MTB ----- TABLE NAME
SET MTB_EXTR_FLAG='N',
MTB_ALOC_PROCESS='DC1'
WHERE MTB_I IN --- PRIMARY KEY
(
SELECT * FROM
(
SELECT MTB_I ,ROW_NUMBER() OVER (ORDER BY ROWID) AS RN
FROM MTB
)
WHERE RN BETWEEN 100 AND 500
)
내 의도는 하나의 작업을 처리 할 때마다 다른 설정 데이터를 선택합니다. 다른 데이터 세트로 작업을 실행하기 전에 매번 MTB_EXTR_FLAG = 'N', MTB_ALOC_PROCESS = 'DC1'로 설정하려고합니다.
오류 문제를 해결하거나 다른 검색어를 제안 해 주실 수 있습니까?
감사합니다.
rowid로 정렬하는 것이 현명하지 않습니다. - 테이블에서 다른 작업을 수행 할 때 rowid가 변경 될 수 있습니다. ROWID가 아닌 경우 어떻게 데이터 순위를 매 깁니까? 행이 생성 될 때까지 순위를 매기고 싶습니다. 표에 update_date 열이 있습니까? – haki