数据库表中出场率很是高的一类字段就是状态(如status、state等),如今我正在设计一个数据库表,状态字段有“正常”和“注销”两种状态值。一般会出现如下两种使用方式:数据库
0:正常,1:注销设计
0:注销,1:正常class
有些人用第一种,有些人用第二种,有区别吗?数据
就在这危在旦夕的时刻,系统迭代过程当中增长了几个状态,好比:锁定、过时、拉黑,再比较一下两种方式:异常
0:正常,1:注销,2:锁定,3:过时,4:拉黑di
0:注销,1:正常,2:锁定,3:过时,4:拉黑block
这时候,是否是看到一点区别了,有没有发现第一种方式更优雅? 为何呢?let
由于「幸福的家庭都是类似的,不幸的家庭各有各的不幸」🤣data
正常状态只有一种用0表示,一、二、3等分别表明不一样的异常状况。好像有点道理啊,更况且还有意外收获,能够用 status > 0 检索全部异常状态。delete
再提醒一下上边逻辑严谨一致的那位小哥哥,此处字段名是status并且是数值类型,与boolean类型没有任何瓜葛。若是你的字段名是是is_deleted,我认为你用0表明非、1表明是,那才真是逻辑严谨。
以上就是个人一些胡言乱语,若是大家以为有点道理,但愿帮到大家,若是有说错的地方但愿和你们撕逼,哈哈,谢谢!