(3)mysql 中的運算符

概述

MySQL支持多種類型的運算符,這些運算符能夠用來連接表達式,這些運算符包括:mysql

  • 算數運算符(+,-,*,/,%);
  • 比較運算符(=,!=,<,<=,>,>=,between,in,is null,is not null,like,regexp);
  • 邏輯運算符(not,and,or,xor);
  • 位運算符(&,|,^,~,>>,<<);

舉例

算數運算符

select 0.1+0.333,0.1-0.3333,1/2,1%2;複製代碼

結果

  • 在除法和模運算中,若是除數爲0,結果會返回NULL;
  • 對於模運算,mod(a,b)函數與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;複製代碼

位運算

  • 位運算是將給定的操做數轉化爲二進制以後,對各個操做數每一位進行指定的邏輯運算。
  • 解釋:&-位與,|-位或,^-位異或,~-位取反,>>-位右移,<<-位左移。

運算符的優先級

仍一張圖做爲總結:
sql

mysql運算符優先級

  • 在實際應用中,都是用「( )」來將須要優先的操做括起來,這樣既起到了優先做用,又使得其餘用戶看起來更易於理解。
相關文章
相關標籤/搜索