说下写这篇日志的原因:在 MySQL 中存储状态等值时,用的 char、varchar、或 tinyint,很少使用 enum 或 set。
从个人角度感觉,enum(枚举类型)、set(集合类型)更直观(它适用于业务功能已经确定,否则后期要频繁维护表结构。),但,总用 FIND_IN_SET 查询 set 很是麻烦。网上找了好些时间,才找到方法。因此记录下。
enum 可存储 65535 项值。这有点像 HTML 中的单选框。
set 可存储 64 项值。这有点像 HTML 中的 复选框。
下面将介绍常规用法:
其中 set 类型查询时,可以通过 FIND_IN_SET、LIKE 以及位运算符。首推位运算。