手机
当前位置:查字典教程网 >编程开发 >mysql数据库 >MYSQL SET类型字段的SQL操作知识介绍
MYSQL SET类型字段的SQL操作知识介绍
摘要:复制代码代码如下:`mark`set('index','best','hot')用的人少,懂的人也少,找了很久,总算凑齐了一套知识点看上面的...

复制代码 代码如下:

<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

【MYSQL SET类型字段的SQL操作知识介绍】相关文章:

MySQL 在windows上的安装详细介绍

MySQL 分表优化试验代码

MySQL 导入慢的解决方法

mySQL 延迟 查询主表

SQL Server 存储过程名称查询

常用的SQL例句 数据库开发所需知识

MySQL中字符串函数详细介绍

MYSQL初学者命令行使用指南

MySQL 相关的环境变量

SQL SERVER 2005 最小安装经验

精品推荐
分类导航