2011-10-18 2 views
5

mysql db를 사용하고 있습니다. postgresql과 SQL Server가 부분 인덱싱을 지원한다는 것을 알고 있습니다.부분 색인 또는 필터링 된 색인을위한 mysql의 임시 해결책?

CREATE UNIQUE INDEX myIndex ON myTable (myColumn) where myColumn <> 'myText' 

내가 고유 제약 조건을 만들려고하지만 특정 텍스트 인 경우 중복을 허용해야한다 : 내 경우에는 내가 같은 것을 할 싶어요.

mysql에서 직접 할 수있는 방법을 찾을 수 없습니다. 그러나이를 달성하기위한 해결 방법이 있습니까?

답변

5

나는 그것을 달성하는 유일한 방법이 있다고 가정합니다. 당신은 당신의 테이블에 다른 열을 추가 그것에 인덱스를 생성하고 트리거를 만들거나 다음과 같은 조건을 사용하여이 열을 채우기 위해 당신의 저장 프로 시저 내부/업데이 트를 삽입 할 수 있습니다

if value = 'myText' then put null 
otherwise put value 

그것이

희망이 도움을
관련 문제