促销活动表结果的学习探讨
由于公司产品刚上线,有相关促销活动由于准备不到位而延到下个版本执行.对于促销活动这块的表结构设计,我心里没底,于是我研究了一下;
首先看知乎上观点:
网址如下:
https://www.zhihu.com/question/19807793,摘录部分观点如下:
用户a观点:
以上各位大多是侧重功能和产品方面的,我稍微说点技术和领域建模方面的:
1 促销模型:
-促销基本信息; promotion information [名称,时效性,关联活动,创建者,... ]
-满足条件;qualification [sku, 数量,金额,... ]
-实施优惠; benefit [赠,减,折, ... ]
此模型是目前行业内相对比较典型的做法,扩展性和灵活性足够了;其他不属于模型的特殊促销(极少数情况了),只要额外实现即可。
2 数据关系上,一次促销活动是一个具体的实例,对应到数据库表中的行记录;而常见的10种左右的促销,其实是一个class,或者叫schema ;因此我们可以创建促销模板,以降低促销维护人员的使用门槛。
在实现之前,尽量把设计得细一些,对开发有利;祝你好运!
促销模块,从结构上来说分三个部分:限制条件,促销范围,促销结果。然后从每个维度上都有若干玩法,例如:
限制条件:时间,订单金额,购买数量,购买人数,支付方式,收货地址,运输方式,用户类型,积分等等
促销范围:单个商品,一组商品,品类,整单,以及例外品
促销结果:折扣,扣减,返券,买搭,买赠等等
然后,你把三个维度再做一下组合。。。有的玩呢~
最后,需要有一个促销效果汇总的功能,用来记录分析每一个促销活动的实际花费、带来的销售、毛利、转化率等等。用于持续调整促销活动的效果。
实际操作,像前面两位说的,可以基于ecshop、zencart、magento这些开源网店来改,但是也完全可以拆解了之后从头做,如果需要架构很灵活的话。
CREATE TABLE IF NOT EXISTS `ecs_goods_activity` (
`act_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增ID号',
`act_name` varchar(255) NOT NULL COMMENT '促销活动的名称',
`act_desc` text NOT NULL COMMENT '促销活动的描述',
`act_type` tinyint(3) unsigned NOT NULL,
`goods_id` mediumint(8) unsigned NOT NULL COMMENT '参加活动的id,取值于ecs_goods的goods_id',
`goods_name` varchar(255) NOT NULL COMMENT '商品的名称,取值于ecs_goods的goods_id',
`start_time` int(10) unsigned NOT NULL COMMENT '活动开始时间',
`end_time` int(10) unsigned NOT NULL COMMENT '活动结束时间',
`is_finished` tinyint(3) unsigned NOT NULL COMMENT '活动是否结束,0,结束;1,未结束',
`ext_info` text NOT NULL COMMENT '序列化后的促销活动的配置信息,包括最低价,最高价,出价幅度,保证金等',
PRIMARY KEY (`act_id`),
KEY `act_name` (`act_name`,`act_type`,`goods_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='拍卖活动和夺宝奇兵活动配置信息表' AUTO_INCREMENT=5 ;
促销活动
Sql代码
- --
- -- Table structure for table `ecs_favourable_activity`
- --
- CREATE TABLE IF NOT EXISTS `ecs_favourable_activity` (
- `act_id` smallint(5) unsigned NOT NULL auto_increment,---自增id
- `act_name` varchar(255) NOT NULL,--活动名称
- `start_time` int(10) unsigned NOT NULL,--开始时间
- `end_time` int(10) unsigned NOT NULL,--结束时间
- `user_rank` varchar(255) NOT NULL,--参加的会员等级
- `act_range` tinyint(3) unsigned NOT NULL,--优惠范围;0,全部商品;1,按分类;2,按品牌;3,按商品
- `act_range_ext` varchar(255) NOT NULL,--根据优惠活动范围的不同,该处意义不同;但是都是优惠范围的约束;如,如果是商品,该处是商品的id,如果是品牌,该处是品牌的id
- `min_amount` decimal(10,2) unsigned NOT NULL,--订单达到金额下限,才参加活动
- `max_amount` decimal(10,2) unsigned NOT NULL,--订单达到金额上限,0表没有
- `act_type` tinyint(3) unsigned NOT NULL,--参加活动的优惠方式;0,送赠品或优惠购买;1,现金减免;价格打折优惠
- `act_type_ext` decimal(10,2) unsigned NOT NULL,--如果是送赠品,该处是允许的最大数量,0,无数量限制;现今减免,则是减免金额,单位元;打折,是折扣值,100算,8折就是80
- `gift` text NOT NULL,--如果有特惠商品,这里是序列化后的特惠商品的id,name,price信息;取值于ecs_goods的goods_id,goods_name,价格是添加活动时填写的
- `sort_order` tinyint(3) unsigned NOT NULL default '50',--活动在优惠活动页面显示的先后顺序,数字越大越靠后
- PRIMARY KEY (`act_id`),
- KEY `act_name` (`act_name`)
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
从这张表看,比上张表字段要多,似乎满足了大部分促销活动的场合;1.现金减免,2价格打折;3.特惠商品;
促销活动表结果的学习探讨相关推荐
- 大数据趣味学习探讨(二):我是怎么坚持学习的
CSDN话题挑战赛第2期 参赛话题:大数据趣味学习探讨 文章目录 要不要学,为什么要学大数据,最好的机会没有之一 一.根本性的问题 1.打仗最重要的是什么? 2.为什么总是知行不一 二.大数据到底好在 ...
- [XW大数据技术学习探讨] 公众号学习笔记
[XW大数据技术学习探讨] 公众号学习笔记 一.前言: 博主是某学校大数据专业大二的学生,我们专业的老师XW为了更好的帮助我们学习大数据技术,建立了微信公众号"XW大数据技术学习探讨&quo ...
- [Java学习探讨]为什么学Java虚拟机的Java程序员更有价值?
个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 [Java学习探讨]为什么学Java虚拟机的Java程序员更值钱? 曾经的我经常害怕处理与JVM相关的异常,对JVM的配置参数也一无 ...
- 大数据趣味学习探讨(一):学习框架的重要性
CSDN话题挑战赛第2期 参赛话题:大数据趣味学习探讨 文章目录 学习框架的重要性 一.痛点 二.规则vs元规则 三.无穷无尽的新问题 四.感悟 学习框架的重要性 框架类似底层方法论,有人说学习方法论 ...
- EcShop常用 促销活动表结构
促销活动 Sql代码 -- -- Table structure for table `ecs_favourable_activity` -- CREATE TABLE IF NOT EXISTS ` ...
- 百度地图离线开发demo(vue+百度地图3.0+百度瓦片)(仅供参考,学习探讨)
公司需求开发离线地图功能.搜索学习,踩坑,试验(由于参考借鉴了n多文章,就不分别贴出对应文章了,感谢分享...),最终整合了一套集成vue的离线地图开发方案,文章将分享一整套的解决方案思路与方式.后续 ...
- 关于CSS3圆角矩形的一些学习探讨
视频课堂https://edu.csdn.net/combo/detail/802 一.CSS3圆角的优点 传统的圆角生成方案,必须使用多张图片作为背景图案.CSS3的出现,使得我们再也不必浪费时间去 ...
- MongoDB学习探讨
1.启动 64位win7: 1.不用怎么安装,就是下载后搜一下配置教程,跟着配置好就可以了. (官网有点变态,就到这里下载了:http://www.mongodb.org/dl/win32/x86_6 ...
- Lucene下分词工具的学习探讨(二)
今天又找到一种分词器IKanalyzer,对Lucene的支持挺好,不过我没有找到它的人名,地名识别功能在哪里! 这个分词器的文档做得还挺好,挺细致,挺全面的!基本的功能看文档就都能学会了! 好了,闲 ...
最新文章
- r语言必学的十个包肖凯_家长专栏自闭症儿童语言康复训练
- python 遍历文件夹下面所有的文件
- Ubuntu win8 小设备版本
- CentOS关机大法之shutdown命令格式
- OpenGL控件变换
- 【转】JavaScript常用代码书写规范
- 《证券基金经营机构信息技术管理办法》要点简读
- 网络安全:9次实验带你学会网安
- 争议带货达人董明珠:直播带货476亿 却被质疑经销商刷单
- 腾讯云服务器获取root权限(ubuntu系统)
- 在GitHub上建立自己在线简历
- 软件工程结对开发——返回一个整数数组中最大子数组的和(JAVA)
- vscode插件及配置
- 安全环保专题培训考试题
- vscode+platformio IDE+sdcc搭建51单片机开发环境(win764)
- usb禁止重定向_谈USB重定向的方式
- 迁移学习五——GFK
- 数据结构-树 速通指南
- Reflections on Trusting Trust(关于托付信任的思考)
- 网易我的世界 服务器物品转移,我的世界:转移箱子物品非常麻烦,有了这个mod,随时都能搬家...