커서를 사용하여 테이블을 업데이트하려고합니다. 그러나 일부 레코드 만 업데이트되고 다른 레코드는 업데이트되지 않습니다. 업데이트 쿼리의 where 절에 인덱스가있는 열이 있습니다. 이 문제와 관련하여 왜 그리고 어떻게해야하는지 설명해 주시겠습니까?일부 레코드가 업데이트되는 이유는 다른 레코드가 Oracle 11g에없는 이유는 무엇입니까?
update table_name
set table_column1='text'
where table_column2=(select distinct table_column2 from table);
색인은 table_column2에 있습니다.
그 유형입니까? 'table'이'table_name'이어야합니까? –
where 하위 쿼리에서 무엇을 달성하려고합니까? 왜 당신은 별개의 것을 사용하고 있습니까? 가능할 때마다 구별을 피해야합니다. – tsells
@Ramesh K-'table'과'table_name'이 다른 테이블이라면,'table'은'table_name'에있는'table_column2'의 모든 값을 가지고 있습니까? 어느 테이블도'table_column2'에'NULL' 값을 가질 수 있습니까? –