MYSQL SET類型字段的SQL操作常識引見。本站提示廣大學習愛好者:(MYSQL SET類型字段的SQL操作常識引見)文章只能為提供參考,不一定能成為您想要的結果。以下是MYSQL SET類型字段的SQL操作常識引見正文
<em>`mark` set('index','best','hot')</em>
用的人少,懂的人也少,找了良久,總算湊齊了一套常識點
看下面的構造,MYSQL不傻,會存index嗎,不會,存的是數字
SET字段是應用二進制數字來逐個對應你設置的值,好比index,排在第0位,那末2的零次方等於1
update from table SET mark=1
update from table SET mark='index'
下面兩個後果是一樣的。
接著成績就來了,就像織夢那樣,假如我想將一篇文章添加一個熱點,然則不想刪除其它標識在呢麼辦,或許我就想刪除一個標識,我也不曉得之前有甚麼標識。
以下是添加標識
update from table SET mark=mark |1|2
不要問我為何用|這個東東,下面的意思是添加index、best兩個標識,假如只添加hot標識,寫成|4便可以了
上面是刪除標識
update from table SET mark=mark &~4&~1
好了,我先說了更新,上面說查詢
SELECT * FROM table WHERE FIND_IN_SET('hot',mark)
這個是最簡略的查詢辦法,也能夠用hot地點地位的二進制數4來替換查詢,效力是一樣的
也能夠這麼寫:
SELECT * FROM table WHERE mark & 1