기본 키가 새 테이블에있을 때 기본 키 제약 조건으로 인해 테이블 복사 오류가 발생합니다. 프라이 머리 키를 설정하지 않음으로써 조사를 할 때 소스 테이블에서 중복 된 행을 찾을 수 있었지만 여전히 그 경로가 어떻게되어 있는지 확신 할 수 없었지만, 내가 궁금해하는 점은 나머지 부분입니다.WHERE 절이 중복 행을 표시하지 않습니다.
여기 간다 :
내가 전체 테이블을 선택하고 반환하는 SQL 쿼리를 다음이 값을 볼 수 있습니다SELECT *
FROM search_term_suggest
order by search_term
가 중복 내가 찾을 수있는 테이블을 스크롤해야했다 그것.
하지만 내 쿼리를 제한 할 때
SELECT *
FROM search_term_suggest
where search_term = 'b'
당신은 첫 번째 값을 필터링 볼 수 있습니다. 데이터베이스에 트리거가 없거나 선택 쿼리를 제한하는 것으로 보이는 항목이 없습니다.
나는 SQL 2008 R2를 실행하고 있습니다. 어떤 도움이라도 대단히 감사합니다. 테이블을 복사하는 데이터베이스는 SQL 2000 데이터베이스이며, 위와 동일한 쿼리를 사용하여 선택하면 예상 한 결과를 얻습니다.
편집 : search_term은 varchar (100)이며 search_term_suggest는 테이블이 아닙니다.
'search_term_suggest'는 테이블 또는 뷰입니까? 'search_term'의 데이터 타입은 무엇입니까? (트리거는 SELECT 트리거와 같은 것이 없기 때문에 관련이 없습니다.) –
실행하면 결과가 어떻게되는지를 알려주십시오 : 'SELECT * FROM search_term_suggest where search_term LIKE'b % ''? –
@GerardoLima가 LIKE 절을 추가하면 두 레코드가 모두 반환됩니다. 아론의 대답에있는 주석을 참조하십시오. – Robert