>  기사  >  데이터 베이스  >  MySQL 학습 시리즈 4: 연산자

MySQL 학습 시리즈 4: 연산자

黄舟
黄舟원래의
2016-12-28 17:42:56953검색

MYSQL에는 많은 연산자가 있습니다. 이 섹션에서는 주로 MYSQL에는 있지만 SQLSERVER에는 없는 연산자에 대해 설명합니다.

안전한 등호 연산자()

이것은 연산자는 = 연산자와 동일한 비교를 수행하지만 는 NULL 값을 결정하는 데 사용될 수 있습니다.

두 피연산자가 모두 NULL인 경우 반환 값은 NULL 대신 1입니다.

한 피연산자가 NULL인 경우 반환 값은 NULL 대신 0입니다.

다음은 SELECT NULL 1 SELECT 10 SELECT NULL NULL 의 실행 결과입니다.

두 피연산자가 모두 NULL이면 반환됩니다. 값은 1이고 NULL이 아닙니다.

MySQL 학습 시리즈 4: 연산자

MySQL 학습 시리즈 4: 연산자

MySQL 학습 시리즈 4: 연산자

LEAST 연산자

구문 형식은 LEAST(값 1, 값 2,...값 n)입니다. 여기서 n 값은 매개변수 목록에 n개의 값이 있음을 나타냅니다. 인수가 2개 이상인 경우 최소값을 반환합니다.

독립 변수가 NULL이면 LEAST()의 반환 값은 NULL입니다

LEAST 연산자를 사용하여 크기를 결정하는 SQL 문은 다음과 같습니다.

MySQL 학습 시리즈 4: 연산자

결과에서 볼 수 있듯이 매개변수가 정수 또는 부동 소수점 숫자인 경우 LEAST는 가장 작은 값을 반환합니다.

매개변수가 문자열인 경우 알파벳순입니다. order는 가장 높은 순서의 문자로 반환됩니다.

비교값 목록에 NULL이 있는 경우 크기를 확인할 수 없으며 반환값은 NULL입니다

GREATEST 연산자

구문 형식은 GREATEST(value 1, value2,...valuen)입니다. 여기서 n은 매개변수 목록에 n개의 값이 있음을 의미합니다.

2개 이상의 인수를 사용하면 최대값을 반환합니다.

독립 변수가 NULL이면 GREATEST()의 반환 값은 NULL입니다.

GREATEST 연산자를 사용하여 크기를 결정하는 SQL 문은 다음과 같습니다.

MySQL 학습 시리즈 4: 연산자

결과에서 볼 수 있듯이 매개변수가 정수 또는 부동 소수점 숫자인 경우 GREATEST는 가장 큰 값을 반환하고

매개변수가 문자열인 경우 가장 낮은 값을 반환합니다. 문자순으로 반환됩니다.

비교값 목록에 NULL이 있으면 크기를 확인할 수 없으며 반환값은 NULL입니다.

REGEXP 연산자

에는 SQLSERVER에 일반 함수나 연산이 없습니다. 예, MYSQL은 실제로 이 점에서 비교적 완벽합니다.

구문 형식은 다음과 같습니다. expr REGEXP 일치 조건을 충족합니다. 1이 반환됩니다.

그렇지 않으면 0을 반환합니다.

expr 또는 일치 조건이 NULL이면 결과는 NULL입니다.

일반적으로 사용되는 몇 가지 와일드카드:

(1) '^' 일치 이 문자 다음 문자로 시작하는 문자열

(2) '$' 일치 이 문자 다음 문자로 끝나는 문자열

( 3) '.'는 단일 문자와 일치합니다.

(4) '[...]'는 대괄호 안의 모든 문자와 일치합니다. 예를 들어 "[abc]"는 a, b 또는 c와 일치합니다.

문자 범위는 '-'를 사용할 수 있으며, "[a-z]"는 모든 문자와 일치하고 "[0-9]"는 모든 숫자와 일치합니다.

(5) '*'는 모든 숫자와 일치합니다. 앞에 하나 이상의 문자가 0입니다. 예를 들어, "x*"는 임의 개수의 '*' 문자와 일치하고, "[0-9]*"는 임의 개수의 자릿수와 일치하고,

및 ".*"는 임의 개수의 임의 문자와 일치합니다.

REGEXP 연산자를 사용하여 문자열 일치 작업을 수행합니다. SQL 문은 다음과 같습니다.

MySQL 학습 시리즈 4: 연산자

결과에서 볼 수 있듯이 지정된 일치 문자열은 스키야.

'^s'는 문자 s로 시작하는 모든 문자열과 일치한다는 의미이므로 일치 조건이 충족되고 1이 반환됩니다.

'y$'는 문자 y로 끝나는 모든 문자열과 일치한다는 의미입니다. , 따라서 일치 조건이 충족되고 1이 반환됩니다.

'.sky'는 sky로 끝나는 문자열과 일치하고 문자 길이가 4이므로 일치 조건이 충족되고 1이 반환됨을 의미합니다.

'^s'는 문자 s로 시작하는 모든 문자열과 일치한다는 의미이므로 일치 조건이 충족되고 1이 반환됩니다.

'[ab]'는 문자 a가 포함된 모든 문자열과 일치한다는 의미입니다. 또는 b, 지정된 문자열에 문자 a가 없습니다. 문자 b가 없으므로 일치 조건이 충족되지 않고 0이 반환됩니다.

팁: 정규식은 복잡한 쿼리에 대한 강력한 도구입니다. LIKE 문자열 일치를 사용하면 더 많은 와일드카드 유형을 사용할 수 있습니다.

쿼리 결과가 더 유연합니다.

논리 연산자

논리 AND 연산자: AND 또는 &&

논리 OR 연산자: OR 또는 ||

위의 두 연산자는 말할 것도 없습니다

SQLSERVER에서 AND 연산자는 AND 또는 &입니다. OR 연산자는 OR 또는 |

http://sqlfool.com/2009/02/bitwise-Operations/


배타적 OR 연산자: , 반환 결과는 0입니다.

하나가 0이고 다른 하나가 0이 아닌 경우 반환 결과는 1입니다.

배타적 OR 연산자 XOR을 사용하세요. SQL 문은 다음과 같습니다

MySQL 학습 시리즈 4: 연산자'1 XOR 1'과 '0 XOR'의 연산자 양쪽에 피연산자가 있는 것을 결과를 보면 알 수 있습니다. 0'은 둘 다 0이 아닌 값이거나 둘 다 0이므로 0을 반환합니다.

'1 피연산자 중 하나는 NULL이고 반환 결과는 NULL입니다. 1'에는 피연산자가 여러 개 있고, 연산자가 동일하므로 연산자를 왼쪽에서 오른쪽으로 계산하면 '1 XOR 1' 결과는 0이 되고, 이어서 1로 XOR 연산을 하므로 결과가 1이 된다.

TIPS: Used의 계산, 여기에 간략한 소개가 있습니다

비트 연산자는 이진 바이트의 비트를 테스트, 이동 또는 테스트하는 데 사용됩니다

제공되는 비트 연산 MYSQL에서는

비트 OR(|)

비트 AND(&)

비트 XOR(^)

비트 왼쪽 시프트(
비트 오른쪽 시프트(>>)

비트 반전(~): 모든 비트 반전

TIPS: BIN()=binary를 사용할 수 있습니다. 함수는 검사를 수행합니다. 십진수의 이진 표현

예를 들어 숫자 20 SELECT BIN(20)

이진 표현: 10100




마찬가지로 SQLServer에도 비트 연산자가 있지만 다음과 같이 MySQL만큼 많지는 않습니다.




특별 팁

MYSQL의 일부 특수 문자에는 이스케이프 문자가 필요합니다. 그렇지 않으면 예상치 못한 결과가 발생합니다. MySQL 학습 시리즈 4: 연산자

입력 시 다음 특수 문자 앞에 백슬래시가 있어야 합니다.

작은따옴표를 입력하려면 다음이 필요합니다. '

MySQL 학습 시리즈 4: 연산자큰따옴표를 입력하려면 다음이 필요합니다. "

Enter 백슬래시: \

캐리지 리턴 입력: r

줄바꿈 입력: n

탭 입력: tab

백스페이스 기호 입력: b

이러한 특수 문자를 데이터베이스에 삽입하기 전에 반드시 이스케이프 처리하세요

SQLSERVER에서 이러한 특수 문자 앞에는 백슬래시가 아니라 작은따옴표가 붙습니다.'

예를 들어, 작은 따옴표와 백슬래시를 추가하면 삽입 성공




요약

이 섹션에서는 MYSQL의 일부 연산자와 특수 문자를 간략하게 소개하고 차이점을 비교했습니다. SQLSERVER

위 내용은 MySQL 학습 시리즈 4: 연산자 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.