三级分类菜单的数据库设计
http://www.imooc.com/article/285246?block_id=tuijian_wz
最近在设计一款进销存系统的时候,遇到一个分类的设计问题,就是如何将分类设计成数据库里的表,怎么样设计才比较灵活?
举个例子,一级分类:生鲜类,二级分类:蔬菜类,三级分类:青菜类,如果你将这三个分类设计成三张表然后连表查询,貌似也没什么不妥,但是,一张表就一个主键一个名字加一个创建和修改时间记录,不觉得很浪费吗?而且假设,仅仅是假设,如果是无限级的分类,你就无限的增加表的个数吗?显然工作量比较大,于是我将这三类统一放到了一张表里,字段如下:
如果是一级类,则level1和level2字段为0,如果是二级分类,则level2字段为0,如果是三级分类则这两个字段都不为0。然后是如何判断二级分类所属哪一个一级大类,用的是整除的办法,例如饮料属于一级分类里的食品类,101整除100,得到的是1,正好是主键为1的大类,同理其他的也是这样处理的。这样设计的好处就是,如果再加一级分类,我只需要增加字段即可。
作者:Caeser_
链接:http://www.imooc.com/article/285246?block_id=tuijian_wz
来源:慕课网
三级分类菜单的数据库设计相关推荐
- php获取表所有数据类型,php excel 导入 导入三级分类 表格应该怎么设计才能得到想要的数据格式?...
就是多个1级分类 下面有不确定个二级分类 二级分类下面有不确定个三级分类 我想获取到相关的数据组合写入数据库 但是这个格式不知道怎么排才能获取到对的数据 有空的亲们给看看 帮下 谢谢 有没有办法获取整 ...
- js三级分类菜单导航
原理很简单:点击标题的时候把子目录的id传给js函数,然后js函数判断是打开还是关上子目录. Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML ...
- 代理分账,三级分销,PHP数据库设计和接口开发
场景: 在会员基础,后台升级会员为省代.市代.区代. A->B->C 省代A:直属下属B提成x1,直属下属C提成x2,直属下线普通会员D提成x3,本身消费提成x4 以此类推,每个代理自身消 ...
- php 读取三级分类,php excel 导入 导入三级分类 表格应该怎么设计才能得到想要的数据格式?汗血宝马...
array (size=16) 0 => array (size=7) 0 => float 1 1 => string '销售部' (length=9) 2 => strin ...
- 文章分类标签数据库设计
文章分类对应标签数据库设计 这是16 年写的文章.自己悠着看 几乎在大部分有管新闻列表项目中,都涉及文章与标签的设计,应该说比较常见.典型的例子.考虑了很多种办法,见识了三四种对应的关系,现在我来说一 ...
- 数据库设计-多级栏目(标题)分类设计
数据库设计-多级栏目(标题)分类设计 文章目录 数据库设计-多级栏目(标题)分类设计 栏目表 内容表 栏目表 id cid cname 主键 栏目级别id 栏目名 栏目cid:一级栏目,二级栏目,三级 ...
- 中小型超市系统中的分类/产品属性/扩展属性的数据库设计
中小型商城系统中的分类/产品属性/扩展属性的数据库设计 正文: 之前发表过一篇"商城系统中[商品扩展属性]的表单生成及客户端验证",部分童鞋对于后台数据库的设计比较感兴趣,于是今天 ...
- php三级分销思路 数据库设计_分销系统的用户关系,用户与推广链接的数据库设计。设计思路...
简单点说二三级分销系统, 1.用户通过分享链接促成商品卖出,获取到一定比例的商品利润.2.用户促成交易获得一定比例的利润时,其上级用户也会获得一定比例的利润. 对于本人所设计的分销系统,与二三级分销系 ...
- mysql 分类标签表设计_如何进行文章分类和标签的数据库设计
几乎在所有web项目中,都涉及文章分类和标签的设计,应该说这是一个比较常见.典型的案例.站长并不保证我的思路就是最好的,只是分享出来大家一起交流一下,互相促进与提高. 我们假设的开发项目是一个博客系统 ...
最新文章
- 使用浏览器访问 Linux 终端的方法
- #pragma使用分析
- linux动态库ppt,LINUX系统中动态链接库创建与使用补充_区块链白皮书代写|市场计划书项目PPT设计_Tbleg...
- 对于以太坊的Solidity语言介绍
- [机器学习-Sklearn]决策树学习与总结 (ID3, C4.5, C5.0, CART)
- 并发容器——ConcurrentHashMap
- linux 编译安装nginx,配置自启动脚本
- 3.凤凰架构:构建可靠的大型分布式系统 --- 事务处理
- python安装与开发环境搭建实验总结_python开发环境安装配置
- apollo源码分析 感知_Scikit-Learn 源码研读 (第一期)项目结构介绍
- java spark命令行执行参数
- CAD软件查看.dwg、.dxf、.dwf、.jpeg、.jpg、.png、.gif等文件
- Android 深色模式使用失效
- 不规则四面体知道六边的体积公式
- HTML5实现首页动态视频背景
- linux中dd命令详解,Linux基础知识之dd命令详解
- vue 获取元素宽高
- 技巧 | 使用基础绘图系统绘制「森林图」
- GOOSE报文分析_详解GOOSE服务
- 软件测试的培训机构靠谱吗
热门文章
- C#获取刚插入的数据的id
- commons-pool
- Python匿名函数——lambda表达式
- UVa 10026 - Shoemaker's Problem
- java-多线程-一道阿里面试题分析
- Direct3D提高篇:HLSL编程实现PhotoShop滤镜效果 - 伪 HDR/Blow
- idea 搜索不到gsonformat_Idea中GsonFormat插件安装
- leetcode 665. 非递减数列(贪心算法)
- leetcode 1046. 最后一块石头的重量(堆)
- 硕士可以跟别的导师做实验吗_如何成为一名导师可以成为双刃剑