즉, 두 개의 부울 값에 대해 XOR 연산자는 서로 다른 경우 true를 반환합니다. 그것은 그렇게 간단합니다.
- true XOR false는 true를 반환합니다.
- false XOR false는 false를 반환합니다.
- true XOR true는 false를 반환합니다.
SQL에서 XOR 연산자의 기능과 사용 방법을 살펴보겠습니다. 데모 목적으로 MySQL을 기본 데이터베이스 시스템으로 사용합니다.
SQL XOR 연산자
SQL에서 XOR 연산자를 사용하면 두 부울 표현식 간에 논리적 XOR 연산을 수행할 수 있습니다.
XOR 연산과 마찬가지로 연산자는 표현식 중 정확히 하나가 true인 경우 부울 true를 반환하고 그렇지 않으면 부울 false를 반환합니다.
MySQL은 이 논리를 기반으로 복잡한 조건문을 작성할 수 있는 XOR 연산자를 지원합니다.
기본 구문은 다음과 같습니다.
식1 XOR 식2이 기능의 몇 가지 기본적인 사용법을 살펴보겠습니다.
기본 사용법
두 개의 부울 표현식을 평가할 때 MySQL에서 XOR 연산자가 어떻게 작동하는지 보여주는 다음 예를 고려하십시오.
res로 1 xor 1을 선택하십시오.이 경우 MySQL은 1을 true로, 0을 false로 처리합니다. 따라서 두 표현식이 모두 true이므로 연산자는 다음과 같이 false를 반환합니다.
해상도|---+
0|
표현식이나 피연산자 중 하나가 참인 경우 연산자의 기능이 유지됩니다. 예는 다음과 같습니다.
res로 1 xor 0을 선택하십시오.이 경우 정확히 하나의 값만 true이므로 연산자는 다음과 같이 true를 반환합니다.
해상도|---+
1|
고급 사용법
데이터베이스 테이블을 사용하여 XOR 연산자를 사용하는 고급 예제를 살펴보겠습니다. 이를 위해 Sakila 샘플 데이터베이스의 '고객' 테이블을 사용합니다.
고객 테이블에서 활성 또는 비활성 회원 중 하나이지만 둘 다는 아닌 고객 목록을 검색한다고 가정합니다.
이 경우 활성 상태는 1로 표시되고 비활성 상태는 0 값으로 표시됩니다.
이를 달성하기 위해 이를 XOR 연산자와 함께 사용할 수 있습니다. 다음 예제 쿼리를 고려해보세요.
SELECT 고객 ID, 이름, 이메일, 활성고객으로부터
WHERE(활성 XOR 비활성) = 1 제한 3;
그러면 다음과 같이 일치하는 레코드가 반환됩니다.
거기 있어요!
결론
이 자습서에서는 다양한 기능과 사용법을 다루면서 SQL에서 XOR 연산자를 사용하고 작업하는 방법을 배웠습니다. 또한 데이터베이스 테이블에서 이를 사용하여 특정 레코드를 필터링하는 방법도 살펴보았습니다.