집 >데이터 베이스 >MySQL 튜토리얼 >MySQL에서 '<=>' 연산자를 사용하는 방법
이 글에서는 MySQL에서 "<=>" 연산자를 사용하는 방법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.
질문:
이전 개발자의 코드를 보다가
?1WHERE p.name <=>NULL
이 쿼리 문에서 <=> 그게 무슨 뜻이야? = 기호와 같은가요? 아니면 문법적인 오류인가요? 그러나 오류나 예외는 표시되지 않습니다. 나는 이미 mysql에서 <>와 같은 기호를 알고 있습니다.
최고의 답변:
= 기호와 동일
일반 = 연산자와 마찬가지로 두 값을 비교하고 결과는 0(같지 않음) 또는 1(같음)입니다. ' A''B'는 0을 얻고 'a''a'는 1을 얻습니다.
2. = 기호와 = 연산자의 차이점 = 연산자와 NULL 값의 차이점은 NULL 값이 의미가 없다는 것입니다. 따라서 = 연산자는 NULL을 유효한 결과로 처리할 수 없습니다. 따라서 <=>,
'a' <=> NULL은 0을 얻습니다. NULL<=>은 1을 얻습니다. = 연산자와 달리 = 연산자의 규칙은 'a'=NULL이며 결과는 NULL입니다. NULL = NULL인 경우에도 결과는 NULL입니다. 그건 그렇고, MySQL의 거의 모든 연산자와 함수는 이런 방식으로 작동합니다. 왜냐하면 NULL과의 비교는 기본적으로 의미가 없기 때문입니다.
Use두 피연산자에 NULL이 포함될 수 있는 경우 일관된 문이 필요합니다.
?1...WHERE col_a <=> ? ...
여기의 자리 표시자는 상수이거나 NULL일 수 있습니다. <=> 변화.
관련 연산자<=> 외에도 특정 값을 NULL과 비교하는 데 사용되는 두 가지 다른 연산자, 즉 IS NULL 및 IS NOT NULL이 있습니다. 이는 ANSI 표준의 일부이므로 다른 데이터베이스에서 사용할 수 있습니다. 그리고 <=>는 mysql에서만 사용할 수 있습니다.
mysql에서는 <=>를 방언으로 생각하시면 됩니다.
?12'a' IS NULL ==>'a' <=>NULL'a' IS NOT NULL ==>NOT('a' <=>NULL)
따라서 당신은 이 쿼리 문 세그먼트를 더 이식 가능하도록 변경할 수 있습니다:
?1WHERE p.name IS NULL
관련 권장 사항: "
mysql tutorial위 내용은 MySQL에서 '<=>' 연산자를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!