字段的枚举值太多怎么办

今天需要处理个枚举值,这个字段有20几个类型,这我要是每次用的时候都去翻译一遍,不得疯啊。

问题背景:
有一张日志表,其中有一个类型字段,他有很多的枚举值,像这样:

0商品详情页 1 首页 2 分类  3 荟种草 4 购物车 5 个人中心 6 订单列表 7 订单选择优惠券 8 我的优惠券 9 提现页面 10 我的分销页面 11售后佣金页面 12 待审核分销 13 我的拼团 14 我的地址 15 订单地址选择 16 我的收藏 17 售后服务 18 活动列表页面 19 拼团列表页面 20 分类商品列表页面:步骤商品列表 

这要是每次使用的时候,都写啥case when之类的东西,不得累挂掉,新增了呢?难道经常去改脚本,那脚本的可重用性也太差了。

解决方案:

  • 自定义函数
    说实话,这个我是首先想到的方法,可惜啊,这个也是个很傻的办法,如果你把case when写在这里,那以后枚举值增加了,咋搞?去改这个函数?唯一解决的就是改一次函数就行,不用再每一段代码中都去改。

  • 维度表
    作为一个曾经搞数仓的,居然首相想到的不是使用维度表,罪过罪过。新建一张字典表或者叫他维度表,映射关系表,反正里面存着这些枚举值的key和value就行了,每次去join一下,或者使用上面自定义函数的方法,结合一下使用,搞个函数就不用去关联了,也算是一个方法。一定要将一些重复性的,公共性的代码,统一管理,不要人手一个逻辑,人手一段代码,平时复制粘贴,后期维护成本太高了。

最近基本都是直接在业务系统里面写SQL,目前数仓的东西都不敢用,因为之前搞的同学都离职了,我这去猜测他的逻辑,还不如直接从底层写来得快,而且公司要上数据中台,我想着在中台项目里去梳理吧。

你可能感兴趣的:(字段的枚举值太多怎么办)