값이 같지 않아야하는 열이있는 테이블이 있습니다. 열악한 구현 소프트웨어로 인해 사용자가 복제본을 입력했는지 여부를 확인하지 않기 때문에 열의 모든 값을보고 "단순한"SQL 문이나 함수를 작성하는 작업을 위탁 받았습니다. 같은. SQL 자체는 한 달에 한 번 실행되므로 효율적 일 필요는 없습니다.값이 열에서 동일하지 않음을 확인하십시오.
컬럼은 int를 저장하고 중복 값 중 하나를 증가시키고 컬럼에 대해 동일한 값을 가진 항목이 더 이상 없을 때까지 계속 수행합니다. 내가해야 할 모든 제안? 어디서부터 시작해야할지 모르겠습니다.
통찰력있는 사람 덕분입니다.
편집 : 죄송합니다. 중복되지 않은 데이터의 값은 그대로 유지해야합니다. 이는 고객에게 사용되는 설정이며, 값이 중복되는 경우에만이를 처벌해야합니다. 그렇지 않으면 우리는 그들의 환경을 파괴해서는 안됩니다. 그렇지 않으면 화가 날 것입니다.
많은 열을 포함하고있는 하나의 테이블이지만 int 유형이며 특히 null이 포함되지 않은이 특정 열은 중복되지 않아야합니다.
해당 열은 무엇을 위해 사용됩니까? –
@Quillion, 확인해야하는 열의 수는 테이블 구조도 정교하게 작성하십시오. –
이 열은 다른 테이블이나 데이터에서 참조합니까? 원래 auto_increment 열이었던 것처럼 들리지만 이제는 값을 다시 한번 고유하게 만들려고합니다. 그러나 그렇다면 외래 키 제약 조건이없는 곳에서도 외래 키로 사용할 가능성이 있습니다. 또한, 당신이 복제물에 어떤 새로운 가치를 부여하는지는 정말로 중요합니까? 사용되지 않는 정수가 될 수 있습니까? – MatBailie