基礎(chǔ)建設(shè)龍頭股seo做的比較牛的公司
目錄
算術(shù)運(yùn)算符
比較運(yùn)算符
邏輯運(yùn)算符?
位運(yùn)算符?
運(yùn)算符的優(yōu)先級
MySQL從小白到總裁完整教程目錄:https://blog.csdn.net/weixin_67859959/article/details/129334507?spm=1001.2014.3001.5502
數(shù)據(jù)庫中的表結(jié)構(gòu)確立后,表中的數(shù)據(jù)代表的意義就已經(jīng)確定。而通過MySQL運(yùn)算符進(jìn)行運(yùn)算,就可以獲取到表結(jié)構(gòu)以外的另一種數(shù)據(jù)。例如,學(xué)生表中存在一個birth字段,這個字段表示學(xué)生的出生年份。而運(yùn)用MySQL的算術(shù)運(yùn)算符用當(dāng)前的年份減學(xué)生出生的年份,那么得到的就是這個學(xué)生的實際年齡數(shù)據(jù)。這就是MySQL的運(yùn)算符,所以熟悉并掌握運(yùn)算符的應(yīng)用,對于操作MySQL數(shù)據(jù)庫中的數(shù)據(jù)是非常有用的。下面就來熟悉一下MySQL支持的4種運(yùn)算符都具備哪些功能。
算術(shù)運(yùn)算符:執(zhí)行算術(shù)運(yùn)算,例如:加、減、乘、除等。
比較運(yùn)算符:包括大于、小于、等于或者不等于,等等。主要用于數(shù)值的比較、字符串的匹配等方面。例如:LIKE、IN、BETWEEN AND和IS NULL等都是比較運(yùn)算符,還包括正則表達(dá)式的REGEXP也是比較運(yùn)算符。
邏輯運(yùn)算符:包括與、或、非和異或等邏輯運(yùn)算符。其返回值為布爾型,真值(1或true)和假值(0或false)。
位運(yùn)算符:包括按位與、按位或、按位取反、按位異或、按位左移和按位右移等位運(yùn)算符。位運(yùn)算必須先將數(shù)據(jù)轉(zhuǎn)換為二進(jìn)制,然后在二進(jìn)制格式下進(jìn)行操作,運(yùn)算完成后,將二進(jìn)制的值轉(zhuǎn)換為原來的類型,返回給用戶。
算術(shù)運(yùn)算符
算術(shù)運(yùn)算符是MySQL中最常用的一類運(yùn)算符。MySQL支持的算術(shù)運(yùn)算符包括:加、減、乘、除、求余。
?
加(+)、減(-)和乘(*)可以同時計算多個操作數(shù)。除號(/)和求余運(yùn)算符(%)也可以同時計算多個操作數(shù),但是這兩個符號計算多個操作數(shù)不太好。DIV和MOD這兩個運(yùn)算符只有兩個參數(shù)。進(jìn)行除法和求余的運(yùn)算時,如果x2參數(shù)是0或者null,計算結(jié)果將是空值(NULL)。
比較運(yùn)算符
比較運(yùn)算符是查詢數(shù)據(jù)時最常用的一類運(yùn)算符。SELECT語句中的條件語句經(jīng)常要使用比較運(yùn)算符。通過這些比較運(yùn)算符,可以判斷表中的哪些記錄是符合條件的。
下面對幾種較常用的比較運(yùn)算符進(jìn)行詳解。
1.運(yùn)算符“=”,“=”用來判斷數(shù)字、字符串和表達(dá)式等是否相等。如果相等,返回1,否則返回0。
說明:在運(yùn)用“=”運(yùn)算符判斷兩個字符是否相同時,數(shù)據(jù)庫系統(tǒng)都是根據(jù)字符的ASCII碼進(jìn)行判斷的。如果ASCII碼相等,則表示這兩個字符相同。如果ASCII碼不相等,則表示這兩個字符不相同。注意,空值(NULL)不能使用“=”來判斷。
2.運(yùn)算符“<>”和“!=”,“<>”和“!=”用來判斷數(shù)字、字符串、表達(dá)式等是否不相等。如果不相等,則返回1;否則,返回0。這兩個符號也不能用來判斷空值(NULL)。
3.運(yùn)算符“>”,“>”用來判斷左邊的操作數(shù)是否大于右邊的操作數(shù)。如果大于,返回1;否則,返回0。同樣,空值(NULL)不能使用“>”來判斷。
4.運(yùn)算符“IS NULL”,“IS NULL”用來判斷操作數(shù)是否為空值(NULL)。操作數(shù)為NULL時,結(jié)果返回1;否則,返回0。IS NOT NULL剛好與IS NULL相反。
說明:“=”、“<>”、“!=”、“>”、“>=”、“<”、“<=”等運(yùn)算符都不能用來判斷空值(NULL)。一旦使用,結(jié)果將返回NULL。如果要判斷一個值是否為空值,可以使用IS NULL和IS NOT NULL來判斷。注意:NULL和'NULL'是不同的,前者表示為空值,后者表示一個由4個字母組成的字符串。
5.運(yùn)算符“BETWEEN AND”,“BETWEEN AND”用于判斷數(shù)據(jù)是否在某個取值范圍內(nèi)。
其表達(dá)式如下:
x1 BETWEEN m AND n
如果x1大于等于m,且小于等于n,結(jié)果將返回1,否則將返回0。
6.運(yùn)算符“IN”,“IN”用于判斷數(shù)據(jù)是否存在于某個集合中。
其表達(dá)式如下:
x1 IN(值1,值2,……,值n)
如果x1等于值1到值n中的任何一個值,結(jié)果將返回1。如果不是,結(jié)果將返回0。
7.運(yùn)算符“LIKE”,“LIKE”用來匹配字符串。
其表達(dá)式如下:
x1 LIKE s1
如果x1與字符串s1匹配,結(jié)果將返回1。否則返回0。
8.運(yùn)算符“REGEXP”?,REGEXP”同樣用于匹配字符串,但其使用的是正則表達(dá)式進(jìn)行匹配。
其表達(dá)式格式如下:
x1 REGEXP'匹配方式'
如果x1滿足匹配方式,結(jié)果將返回1;否則將返回0。
說明:使用REGEXP運(yùn)算符匹配字符串,其使用方法非常簡單。REGEXP運(yùn)算符經(jīng)常與“^”、“$”和“.”一起使用。“^”用來匹配字符串的開始部分;“$”用來匹配字符串的結(jié)尾部分;“.”用來代表字符串中的一個字符。?
邏輯運(yùn)算符?
邏輯運(yùn)算符用來判斷表達(dá)式的真假。如果表達(dá)式是真,結(jié)果返回1。如果表達(dá)式是假,結(jié)果返回0。邏輯運(yùn)算符又稱為布爾運(yùn)算符。MySQL中支持4種邏輯運(yùn)算符,分別是與、或、非和異或。
1.“與”運(yùn)算
“&&”或者“AND”是“與”運(yùn)算的兩種表達(dá)方式。如果所有數(shù)據(jù)不為0且不為空值(NULL),則結(jié)果返回1;如果存在任何一個數(shù)據(jù)為0,則結(jié)果返回0;如果存在一個數(shù)據(jù)為NULL且沒有數(shù)據(jù)為0,則結(jié)果返回NULL。“與”運(yùn)算符支持多個數(shù)據(jù)同時進(jìn)行運(yùn)算。
2.“或”運(yùn)算
“||”或者“OR”表示“或”運(yùn)算。所有數(shù)據(jù)中存在任何一個數(shù)據(jù)為非0的數(shù)字時,結(jié)果返回1;如果數(shù)據(jù)中不包含非0的數(shù)字,但包含NULL時,結(jié)果返回NULL;如果操作數(shù)中只有0時,結(jié)果返回0?!盎颉边\(yùn)算符“||”可以同時操作多個數(shù)據(jù)。
3.“非”運(yùn)算
“!”或者NOT表示“非”運(yùn)算。通過“非”運(yùn)算,將返回與操作數(shù)據(jù)相反的結(jié)果。如果操作數(shù)據(jù)是非0的數(shù)字,結(jié)果返回0;如果操作數(shù)據(jù)是0,結(jié)果返回1;如果操作數(shù)據(jù)是NULL,結(jié)果返回NULL。
4.“異或”運(yùn)算
XOR表示“異或”運(yùn)算。當(dāng)其中一個表達(dá)式是真而另外一個表達(dá)式是假時,該表達(dá)式返回的結(jié)果才是真;當(dāng)兩個表達(dá)式的計算結(jié)果都是真或者都是假時,則返回的結(jié)果為假。
位運(yùn)算符?
位運(yùn)算符是在二進(jìn)制數(shù)上進(jìn)行計算的運(yùn)算符。位運(yùn)算會先將操作數(shù)變成二進(jìn)制數(shù),進(jìn)行位運(yùn)算。然后再將計算結(jié)果從二進(jìn)制數(shù)變回十進(jìn)制數(shù)。MySQL中支持6種位運(yùn)算符,分別是:按位與、按位或、按位取反、按位異或、按位左移和按位右移。