由于公司产品刚上线,有相关促销活动由于准备不到位而延到下个版本执行.对于促销活动这块的表结构设计,我心里没底,于是我研究了一下;

首先看知乎上观点:

网址如下:

https://www.zhihu.com/question/19807793,摘录部分观点如下:

用户a观点:

以上各位大多是侧重功能和产品方面的,我稍微说点技术和领域建模方面的:
1 促销模型:
-促销基本信息; promotion information [名称,时效性,关联活动,创建者,... ]
-满足条件;qualification [sku, 数量,金额,... ]
-实施优惠; benefit [赠,减,折, ... ]

此模型是目前行业内相对比较典型的做法,扩展性和灵活性足够了;其他不属于模型的特殊促销(极少数情况了),只要额外实现即可。

2 数据关系上,一次促销活动是一个具体的实例,对应到数据库表中的行记录;而常见的10种左右的促销,其实是一个class,或者叫schema ;因此我们可以创建促销模板,以降低促销维护人员的使用门槛。

在实现之前,尽量把设计得细一些,对开发有利;祝你好运!

用户b观点:

促销模块,从结构上来说分三个部分:限制条件,促销范围,促销结果。然后从每个维度上都有若干玩法,例如:

限制条件:时间,订单金额,购买数量,购买人数,支付方式,收货地址,运输方式,用户类型,积分等等
促销范围:单个商品,一组商品,品类,整单,以及例外品
促销结果:折扣,扣减,返券,买搭,买赠等等

然后,你把三个维度再做一下组合。。。有的玩呢~

最后,需要有一个促销效果汇总的功能,用来记录分析每一个促销活动的实际花费、带来的销售、毛利、转化率等等。用于持续调整促销活动的效果。

实际操作,像前面两位说的,可以基于ecshop、zencart、magento这些开源网店来改,但是也完全可以拆解了之后从头做,如果需要架构很灵活的话。

用户c的建议如下:
国内可以用ecshop,shopex等(假开源也只能先凑合着用了),外贸可以用zencart,prestashop,magento等开源网店,功能都非常先进,里面也自带了很多优惠功能,还可以第行二次开发,非常方便。
前面两位用户的观点,我理解得浅,所以就去下载了ecshop上下载了源码运行,可运行没成功.
后来在http://www.cnblogs.com/lmule/archive/2010/11/05/1869624.html  上找着了ecshop的表结果,
里面关于促销类的表结果,我只找着了一个,如下:
-- 表的结构 `ecs_goods_activity`
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 ;
依然不够理解;于是继续寻找:
也找到了关于ecshop的促销表结构,如下:网址:http://blog.csdn.net/chamtianjiao/article/details/6081430

促销活动

Sql代码

  1. --
  2. -- Table structure for table `ecs_favourable_activity`
  3. --
  4. CREATE TABLE IF NOT EXISTS `ecs_favourable_activity` (
  5. `act_id` smallint(5) unsigned NOT NULL auto_increment,---自增id
  6. `act_name` varchar(255) NOT NULL,--活动名称
  7. `start_time` int(10) unsigned NOT NULL,--开始时间
  8. `end_time` int(10) unsigned NOT NULL,--结束时间
  9. `user_rank` varchar(255) NOT NULL,--参加的会员等级
  10. `act_range` tinyint(3) unsigned NOT NULL,--优惠范围;0,全部商品;1,按分类;2,按品牌;3,按商品
  11. `act_range_ext` varchar(255) NOT NULL,--根据优惠活动范围的不同,该处意义不同;但是都是优惠范围的约束;如,如果是商品,该处是商品的id,如果是品牌,该处是品牌的id
  12. `min_amount` decimal(10,2) unsigned NOT NULL,--订单达到金额下限,才参加活动
  13. `max_amount` decimal(10,2) unsigned NOT NULL,--订单达到金额上限,0表没有
  14. `act_type` tinyint(3) unsigned NOT NULL,--参加活动的优惠方式;0,送赠品或优惠购买;1,现金减免;价格打折优惠
  15. `act_type_ext` decimal(10,2) unsigned NOT NULL,--如果是送赠品,该处是允许的最大数量,0,无数量限制;现今减免,则是减免金额,单位元;打折,是折扣值,100算,8折就是80
  16. `gift` text NOT NULL,--如果有特惠商品,这里是序列化后的特惠商品的id,name,price信息;取值于ecs_goods的goods_id,goods_name,价格是添加活动时填写的
  17. `sort_order` tinyint(3) unsigned NOT NULL default '50',--活动在优惠活动页面显示的先后顺序,数字越大越靠后
  18. PRIMARY KEY  (`act_id`),
  19. KEY `act_name` (`act_name`)
  20. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;

从这张表看,比上张表字段要多,似乎满足了大部分促销活动的场合;1.现金减免,2价格打折;3.特惠商品;

其实还是有点蒙,继续找资料:
然后再参考了一下这个资料:http://www.pmcaff.com/article/index/522932721808512

促销活动表结果的学习探讨相关推荐

  1. 大数据趣味学习探讨(二):我是怎么坚持学习的

    CSDN话题挑战赛第2期 参赛话题:大数据趣味学习探讨 文章目录 要不要学,为什么要学大数据,最好的机会没有之一 一.根本性的问题 1.打仗最重要的是什么? 2.为什么总是知行不一 二.大数据到底好在 ...

  2. [XW大数据技术学习探讨] 公众号学习笔记

    [XW大数据技术学习探讨] 公众号学习笔记 一.前言: 博主是某学校大数据专业大二的学生,我们专业的老师XW为了更好的帮助我们学习大数据技术,建立了微信公众号"XW大数据技术学习探讨&quo ...

  3. [Java学习探讨]为什么学Java虚拟机的Java程序员更有价值?

    个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 [Java学习探讨]为什么学Java虚拟机的Java程序员更值钱? 曾经的我经常害怕处理与JVM相关的异常,对JVM的配置参数也一无 ...

  4. 大数据趣味学习探讨(一):学习框架的重要性

    CSDN话题挑战赛第2期 参赛话题:大数据趣味学习探讨 文章目录 学习框架的重要性 一.痛点 二.规则vs元规则 三.无穷无尽的新问题 四.感悟 学习框架的重要性 框架类似底层方法论,有人说学习方法论 ...

  5. EcShop常用 促销活动表结构

    促销活动 Sql代码 -- -- Table structure for table `ecs_favourable_activity` -- CREATE TABLE IF NOT EXISTS ` ...

  6. 百度地图离线开发demo(vue+百度地图3.0+百度瓦片)(仅供参考,学习探讨)

    公司需求开发离线地图功能.搜索学习,踩坑,试验(由于参考借鉴了n多文章,就不分别贴出对应文章了,感谢分享...),最终整合了一套集成vue的离线地图开发方案,文章将分享一整套的解决方案思路与方式.后续 ...

  7. 关于CSS3圆角矩形的一些学习探讨

    视频课堂https://edu.csdn.net/combo/detail/802 一.CSS3圆角的优点 传统的圆角生成方案,必须使用多张图片作为背景图案.CSS3的出现,使得我们再也不必浪费时间去 ...

  8. MongoDB学习探讨

    1.启动 64位win7: 1.不用怎么安装,就是下载后搜一下配置教程,跟着配置好就可以了. (官网有点变态,就到这里下载了:http://www.mongodb.org/dl/win32/x86_6 ...

  9. Lucene下分词工具的学习探讨(二)

    今天又找到一种分词器IKanalyzer,对Lucene的支持挺好,不过我没有找到它的人名,地名识别功能在哪里! 这个分词器的文档做得还挺好,挺细致,挺全面的!基本的功能看文档就都能学会了! 好了,闲 ...

最新文章

  1. r语言必学的十个包肖凯_家长专栏自闭症儿童语言康复训练
  2. python 遍历文件夹下面所有的文件
  3. Ubuntu win8 小设备版本
  4. CentOS关机大法之shutdown命令格式
  5. OpenGL控件变换
  6. 【转】JavaScript常用代码书写规范
  7. 《证券基金经营机构信息技术管理办法》要点简读
  8. 网络安全:9次实验带你学会网安
  9. 争议带货达人董明珠:直播带货476亿 却被质疑经销商刷单
  10. 腾讯云服务器获取root权限(ubuntu系统)
  11. 在GitHub上建立自己在线简历
  12. 软件工程结对开发——返回一个整数数组中最大子数组的和(JAVA)
  13. vscode插件及配置
  14. 安全环保专题培训考试题
  15. vscode+platformio IDE+sdcc搭建51单片机开发环境(win764)
  16. usb禁止重定向_谈USB重定向的方式
  17. 迁移学习五——GFK
  18. 数据结构-树 速通指南
  19. Reflections on Trusting Trust(关于托付信任的思考)
  20. 网易我的世界 服务器物品转移,我的世界:转移箱子物品非常麻烦,有了这个mod,随时都能搬家...

热门文章

  1. TamperMonkey编写脚本常用api中文版(附文档原地址和各种api案例)
  2. 2021年P气瓶充装考试题及P气瓶充装考试内容
  3. 如何更改您的Apple Watch表带(不花一吨)
  4. 访问共享提示0x80070043错误。
  5. 华为校招2016.09机试 第2题: 字符串查找
  6. 软件危机定义、发生原因、常见表现,如何避免软件危机?
  7. 带有非期望产出的SBM模型(python)
  8. cocos性能优化之spine动画
  9. 基于java web servlet生鲜商城管理系统源码含报告文档
  10. 【实战】AI 怎么打麻将?