下图中红色箭头是父类 而且属于根目录级别。
下面个字段为:ID 父ID 类型名称 深度 排序
前面3个字段没有什么可解释的,做过无限级分类设计的人都应该清楚
而第5个字段排序字段ID:43的23排序代表他在这张表排在23的根目录
而23下面的23,01 说明他是2级分类,排在23下面的第01个,也是支持99级分类。
而我比较特殊的是多了个深度字段,大家可以看上图数据,
ID:40的 深度字段也是40,ID:43的 深度字段也是43。
而他们的下级子类,后面都跟了个 "," 加自己的ID。
2级子类的深度字段就是(父类ID,自己ID),以此类推,3级分类深度就是(总父类ID,上级父类ID,自己ID),后面不用说了吧。
看到这里可以在看看上面的图,因为我这个网站程序,只有2级分类而已。
当然还有中间那个 "," 完全可以自己用自己喜欢的字符 你用 "|" "-" "_"一切字符都可以 但是建议一定要有个字符。
是因为在程序里好分割开来,而且也很直观,完全可以自己在数据库修改分类数据(因为网站分类一般定了很少改动,第一次完全可以在数据库中加上所有分类)
谈到这里,在来说说这个字段有什么功能和好处,咋一看这个字段好象很浪费资源,下面听我细细道来:
在行业门户网站里经常有这样的需求,需要查出某个分类下的所有子分类,如果没有这个字段的话,
那查出下面的所有字分类,SQL语句就应该要很长了,或者使用递归:根据1级父类ID查出所有2级分类--根据2级分类ID--查出所有3级分类,如果有多级分类的话,这样的递归效率可想而知。
如果有这个字段(并且数据已对应加好),一切就变得美好多了
,让你很轻松就能查出某个分类下所有的子类,下面看个图:
有没有看明白,只需要带上条件,深度 like ‘40%’ 注意后面的%一定要带 这样才能查出包括自己在内所有的子类,如果不需要带上自己,我只要自己下面的所有子类,很简单,深度 like ‘40,' 只需要把%号换成你自己设定的分割符就行了(只就是我强调一定要分割符的作用)。
这样是不是很轻松,而且如果后面带上 order by Nt_OrderBy 是不是自动就根据你数据库的排序数据 排好了序呢
最后总结一下,虽然这个字段好用,但是在添加更新分类数据的同时,也往往加大了添加更新的逻辑程序,但是为了性能,为了SQL语句的方便,这一切是值得的。
分享到:
相关推荐
asp(两种)和asp.net(两种)的无限分类实现代码,还有一个表,字段都在里面,初学者可以去研究研究.
jquery的一个插件zTree...此demo是用vs08+sql2005写的 可任意修改 像样更多的功能和外观 就去zTree官网下一个 我写的这个是动态的 就是说是连接数据库的 class表 必须的字段 ID 父ID 还有类别名称。 不懂的可以随时问我
信息网源码,信息发布源码,信息港源码下载,分类源码,信息源码,asp.net信息港源码,多种分类源码,支持无限级栏目及分站 系统支持无限多个一级栏目类别与子栏目类别。分站类别支持无限添加,如省、市、县、镇、村… ...
易贝购物网站 ASP.NET 1.用户模型里的生日字段有bug,当将其改为其他数据类型的字段时,就提示,不能转换成datatime类型,所以这个字段应该设置为不能修改,或只能用日期类型的控件 2.模型字段可以上下移动 3.完成...
0.支持N级菜单导航,菜单显示方式支持目前支持2种模式分别:菜单(无限级),横向(2级) 1.动态切换皮肤,目前有两狂UI 蓝色,咖啡色 2.表单验证,文本框高亮起来 3.可以动态分配权限按钮,分配角色权限,目录结构...
菜单(无限级),横向(2级) 2.表单验证,文本框高亮起来 3.可以动态分配权限按钮,分配角色权限,目录结构,栏目的链接都可以修改。 4.可以隐藏左侧导航栏,打开左侧导航栏,默认是打开,table表格都自应大小...
信息网源码,信息发布源码,信息港源码下载,分类源码,信息源码,asp.net信息港源码,多种分类源码,支持无限级栏目及分站 系统支持无限多个一级栏目类别与子栏目类别。分站类别支持无限添加,如省、市、县、镇、村… ...
1、真正无限级栏目分类,无限数量,无限层次 2、文章添加自动生成HTM 3、文章TAG支持,提供TAG标签调用文章支持 4、网站地图发布,提供HTML和XML两种格式 5、重复文章自动查找 6、高性能站内搜索引擎,文章添加...
没有栏目数量限制, 无限级分类 后台管理全面使用AJAX, 减少刷新次数, 操作灵活方便 内容页支持"多页模式", 方便建立产品展示页 AMCms演示地址 : http://blog.lastidea.net/default.htm 后台地址 : ...
信息网源码,信息发布源码,信息港源码下载,分类源码,信息源码,asp.net信息港源码,多种分类源码,支持无限级栏目及分站 系统支持无限多个一级栏目类别与子栏目类别。分站类别支持无限添加,如省、市、县、镇、村… ...
6、增加一键升级至淘特Asp.Net工具,可无缝升级至淘特Asp.Net cms4.0版 7、其它CSS及JS优化,解决部分IE8下显示的问题。 默认管理地址:http://你的域名/admin/ 用户名:admins 密码:admins 提供的功能有...
无限级树形结构(增、删、改、排序+TreeView显示),功能齐全,项目已全部打包,是VS2005+ACCESS,下载即可运行浏览……
1、 使用全新ASP.Net+c#和三层结构开发. 2、 可生成各类静态页面(html,htm,shtm,shtml和.aspx) 3、 管理后台风格模板自由选择,界面精美 4、 风格模板每月更新多套,还可按需定制 5、 独具的缓存...
系统支持无限级分类,添加、修改、删除,操作十分简单方便。 3、多样化的模板管理。页面模板可以在线预览、添加、修改、删除,每个模型、栏目可以绑定不同的模板,让您的网站不再陷入单一化的页面状态,只要您愿意...
优六综合系统已集成多项插件系统,其Util6 CMS、DMS、OAS、WXS 是在信息化管理系统框架(Util6 MIS)基础上开发的插件系统,Util6 MIS一套基于ASP.NET MVC5 + Layui 开发的通用信息化管理系统快速开发框架 系统操作...
为达到最佳效果,推荐使用九网互联的ASP.net空间,支持ASP.net版本1.1和2.0在线切换、在线脚本映射、ASP.net具体错误信息在线查看。本程序由早晨网络组织开发。开发环境:Windows XP SP2数据库:MS SQL Server 2000...
运行环境:Asp.Net 或.Net 系统特点:可生成静态页面,对搜索引擎更友好,速度更快.而且更安全. 升级后添加功能: 1.在线备份SQL数据库 2.RSS在线订阅器 3.整合了支付宝鲜花支付接口。 4.整合了网奇E客通在线...
为达到最佳效果,推荐使用九网互联的ASP.net空间,支持ASP.net版本1.1和2.0在线切换、在线脚本映射、ASP.net具体错误信息在线查看。三、系统说明易想商城系统(升级,稳定版),是成都易想网络科技有限公司,基于先进的...
Util6 CMS系统功能支持栏目的无限级分类,栏目绑定扩展字段支持扩展字段管理支持会员管理支持评论管理支持文件管理支持文件上传水印各种设置支持内容筛选,支持附加字段字段扩展支持内容扩展筛选支持内容的批量属性...
·商品的分类可自定义字段,自定义字段弥补了商品字段不足的缺点。 ·添加商品需要设置官方分类,官方分类的设定更好的让您的商品被搜索到。 ·添加商品允许上传多图,同一个商品可以设定多张不同角度的图片。 ·...