概述
MySQL支持多種類型的運算符号杠,這些運算符可以用來鏈接表達式找筝,這些運算符包括:
- 算數(shù)運算符(+,-,*,/,%);
- 比較運算符(=,!=,<,<=,>,>=,between,in,is null,is not null,like,regexp);
- 邏輯運算符(not,and,or,xor);
- 位運算符(&,|,^,~,>>,<<);
舉例
算數(shù)運算符
select 0.1+0.333,0.1-0.3333,1/2,1%2;
結(jié)果
- 在除法和模運算中茅特,如果除數(shù)為0哆料,結(jié)果會返回NULL;
- 對于模運算,mod(a,b)函數(shù)與a%b效果一樣策添。
比較運算符
#between and
SELECT 10 BETWEEN 10 AND 20,
9 BETWEEN 10 AND 20;
#like
SELECT 123456 LIKE '123%',
123456 LIKE '%123%',
123456 LIKE '%321%';
#regexp
select 'abcdef' regexp 'ab',
'abcdefg' regexp 'k';
between
like
regexp
邏輯運算符
#not
select not 0,not 1,not null;
#and
select (1 and 1),(0 and 1),(3 and 1),(1 and null);
#or,xor(異或)同上使用
not
and
位運算符
select 2&3,2&3&4,2|3,2^3,~1;
位運算
- 位運算是將給定的操作數(shù)轉(zhuǎn)化為二進制之后材部,對各個操作數(shù)每一位進行指定的邏輯運算。
- 解釋:&-位與唯竹,|-位或乐导,^-位異或,~-位取反浸颓,>>-位右移物臂,<<-位左移旺拉。
運算符的優(yōu)先級
仍一張圖作為總結(jié):
mysql運算符優(yōu)先級
- 在實際應(yīng)用中,都是用“( )”來將需要優(yōu)先的操作括起來棵磷,這樣既起到了優(yōu)先作用蛾狗,又使得其他用戶看起來更易于理解。