MySQL學習(三) 使用操作符進行資料過濾

2021-10-03 16:17:58 字數 1853 閱讀 8021

通過使用andor更加靈活的進行資料過濾

and操作符

select prod_name,prod_price,prod_name

from ***

where vend_id = 1003 and prod_price <= 10;

#對id和price進行了限制,從而選出關鍵項

or操作符

select prod_name,prod_price

from ***

where vend_id = 1002 or vend_id = 1003;

or與and的計算次序問題

select prod_name,prod_price

from ***

where vend_id = 1002 or vend_id = 1003 and prod_price >= 10;

#在mysql語句中,and會比or有更高的優先順序

#如果確實需要先使用or,在執行and,則需要加上小括號

select prod_name,prod_price

from ***

where (vend_id = 1002 or vend_id = 1003) and prod_price >= 10;

in操作符用來指定條件範圍,in中有篩選的取值範圍

select prod_name,prod_price

from ***

where vend_id in (1002,1003)

order by prod_name;

#這是選取了in裡面1002與1003兩項

select prod_name,prod_price

from ***

where vend_id not in (1002,1003)

order by prod_name;

#這裡就是指定vend_id不匹配1002與1003這兩項

#這裡可以理解為是乙個取反操作,在in,between,exists裡面都有實現

首先了解幾個概念:

萬用字元:用來匹配值的一部分字元

搜尋模式:由字面值、萬用字元或兩者組合構成的搜尋條件

like可以使得後面的搜尋模式利用萬用字元進行匹配

select prod_id,prod_name

from ***

where prod_name like 'jet%'

這裡的搜尋模式是』jet%』,意思是尋找以jet起頭的字元,不管jet後面是什麼,都可以匹配

多種靈活操作:

select prod_id,prod_name

from ***

where prod_name like '%jet%'

#這裡是匹配字元**現jet字串的字元

#%的使用是任意字元可以是0個,可以是多個

#另外,空格輸入同樣會被認為是字元,那麼如果在尋找時,可能就會存在不匹配現象,因此還是應該多加%進行更全面的匹配

下劃線的匹配與%萬用字元類似,但是下劃線只匹配單個字元而不是多個字元

select prod_id,prod_name

from ***

where prod_name like '_jet'

#這個只能匹配乙個字元+jet的模式

MySQL的and操作符和or操作符

有時對where的要篩選的列不止乙個時,那麼就用到了and操作符和or操作符,and操作符顧名思義的意思是 並且 而or操作符的意思是 或者 比如以部門員工表為例 查詢部門編號為d001並且入職日期為 1985 02 02的員工編號,那麼就要用到and操作符 那如果是查詢部門編號為d001或者入職日...

操作符使用

1.寫乙個函式返回引數二進位制中 1 的個數 比如 15 0000 1111 4 個 1 程式原型 int count one bits unsigned int value include include pragma warning disable 4996 方法一 int count one ...

perl學習筆記三 操作符

操作符 perl的操作符大部分跟c語言相同,所以下面還是介紹一些不相同 的地方。一。操作符 1。乘冪 例如 2 3 8 乘冪不可以超過系統的表示範圍否則報錯。2。數字比較 例如 a b 若 a b 返回值 1 若 a b 返回值 0 若 a3。邏輯運算子 之所以把它提出來講是這個運算子不能應用於負整...