찾다
데이터 베이스MySQL 튜토리얼MySQL 최적화 - 연산자에 대한 자세한 설명(그림)

MySQL 최적화 - 연산자 상세 설명(그림)

안전한 등호 연산자()

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

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

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

다음은 SELECT NULL 1 SELECT10 SELECTNULLNULL

의 실행 결과는 두 피연산자가 모두 NULL인 경우 반환 값은 NULL이 아닌 1입니다.

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

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

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


SELECT LEAST(2,0),LEAST('a','b','c'),LEAST(10,NULL)

결과에서 볼 수 있듯이 매개변수가 정수 또는 부동 소수점 숫자인 경우 LEAST는

매개변수가 문자열인 경우 알파벳 순서가 가장 높은 문자를 반환합니다.

비교값 목록에 NULL이 있는 경우 크기를 알 수 없으며 반환값이 반환됩니다. NULL

GREATEST 연산자

구문 형식은 GREATEST(값 1, 값 2,...값 n)입니다. 여기서 n 매개변수 목록에 n개의 값이 있다는 뜻입니다.

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

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

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

SELECT GREATEST(2,0),GREATEST('a','b','c'),GREATEST(10,NULL)

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

파라미터가 문자열인 경우 알파벳순으로 마지막 문자를 반환합니다.

비교값 목록에 NULL이 있는 경우 크기를 알 수 없고 반환값이 NULL입니다. 🎜>

REGEXP 연산자


SQLSERVER에는 실제로 이와 관련하여 일반적인 함수나 연산자가 없습니다.


은 문자열 일치에 사용되며 구문 형식은 다음과 같습니다. expr REGEXP 일치 조건, expr이 일치 조건을 충족하면 1을 반환합니다.

충족하지 않으면 0을 반환합니다. 🎜>expr 또는 일치 조건이 NULL이면 결과는 NULL입니다.

일반적으로 사용되는 여러 와일드카드 문자:

(1) '^'는 이 문자 뒤의 문자로 시작하는 문자열과 일치합니다.

(2)' $'는 이 문자 뒤의 문자로 끝나는 문자열과 일치합니다. (3) '.'은 단일 문자와 일치합니다 (4) '[. ..]'는 대괄호 안에 있는 모든 문자와 일치합니다. 예를 들어 "[abc]"는 a, b 또는 c와 일치합니다.

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

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

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

SELECT 'ssky' REGEXP '^s','ssky' REGEXP 'y$' ,'ssky' REGEXP '.sky','ssky' REGEXP '[ab]';

결과에서 볼 수 있듯이 지정된 일치 문자열은 ssky입니다.

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

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

'.sky'表示匹配任何以sky结尾,字符长度为4的字符串,因此满足匹配条件,返回1;

'^s'表示匹配任何以字母s开头的字符串,因此满足匹配条件,返回1;

'[ab]'表示匹配任何包含字母a或者b的字符串,指定字符串中没有字母a也没有字母b,因此不满足匹配条件,返回0;

注意:正则表达式是一个可以进行复杂查询的强大工具,相对于LIKE字符串匹配,他可以使用更多的通配符类型,查询结果更加灵活

逻辑运算符

逻辑与运算符:AND或者&&

逻辑或运算符:OR或者||

异或运算符:XOR

当任意一个操作数为NULL时,返回值为NULL;对于非NULL的操作数,如果两个操作数都是非0值或者都是0值,则返回结果为0;

如果一个为0值,另一个为非0值,返回结果为1

使用异或运算符XOR进行逻辑判断,SQL语句如下

SELECT 1 XOR 1, 0 XOR 0,1 XOR 0,1 XOR NULL,1 XOR 1 XOR 1


由结果可以看到‘1 XOR 1’和‘0 XOR 0’中运算符两边的操作数都为非零值,或者都是零值,因此返回0;

'1 XOR 0'中两边的操作数,一个为0值,另一个为非0值,返回结果为1;

'1 XOR NULL'中有一个操作数为NULL,返回结果为NULL;

'1 XOR 1 XOR 1'中有多个操作数,运算符相同,因此运算符从左到右依次计算,'1 XOR 1'的结果为0,再与1进行异或运算,因此结果为1。

注意: a XOR b的计算等同于(a AND (NOT b))或者(NOT a AND ( b))

位运算符

由于比较少用到,这里只做简单介绍

位运算符是用来对二进制字节中的位进行测试、移位或者测试处理

MYSQL中提供的位运算有

按位或(|)

按位与(&)

按位异或(^)

按位左移(

按位右移(>>)

按位取反(~):反转所有比特

TIPS:可以使用BIN()=binary函数查看一个十进制数的二进制表示

例如20这个数字 SELECT BIN(20) 

二进制表示为:10100

特别提示

某一些MYSQL中的特殊字符需要用转义字符才能插入数据库,否则产生意料之外的结果。

下面的特殊字符需要在输入时加反斜线符号开头

输入单引号需要:\'

输入双引号需要:\''

输入反斜杠:\\

输入回车符:\r

输入换行符:\n

输入制表符:\tab

输入退格符:\b

在插入这些特殊字符到数据库之前一定要进行转义处理

例如插入一个单引号,加了反斜杠,插入成功

INSERT INTO table_1(NAME) VALUES('\'')

SELECT * FROM table_1



위 내용은 MySQL 최적화 - 연산자에 대한 자세한 설명(그림)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

mysql的msi与zip版本有什么区别mysql的msi与zip版本有什么区别May 16, 2022 pm 04:33 PM

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

mysql怎么去掉第一个字符mysql怎么去掉第一个字符May 19, 2022 am 10:21 AM

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

mysql怎么替换换行符mysql怎么替换换行符Apr 18, 2022 pm 03:14 PM

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

mysql怎么将varchar转换为int类型mysql怎么将varchar转换为int类型May 12, 2022 pm 04:51 PM

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

MySQL复制技术之异步复制和半同步复制MySQL复制技术之异步复制和半同步复制Apr 25, 2022 pm 07:21 PM

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

mysql怎么判断是否是数字类型mysql怎么判断是否是数字类型May 16, 2022 am 10:09 AM

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。

mysql怎么删除unique keymysql怎么删除unique keyMay 12, 2022 pm 03:01 PM

在mysql中,可利用“ALTER TABLE 表名 DROP INDEX unique key名”语句来删除unique key;ALTER TABLE语句用于对数据进行添加、删除或修改操作,DROP INDEX语句用于表示删除约束操作。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.