首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >字符串分类策略

字符串分类策略
EN

Stack Overflow用户
提问于 2010-05-25 07:27:17
回答 1查看 172关注 0票数 2

我是一个羽翼未丰的军事史网站上的一人开发团队。该地点的一个方面是包括参加的国家和编队(团、师等)在内的1200次个人战役的目录。

编队信息(以及其他战斗信息)是由一个10人的志愿者团队从一系列书籍中手工输入的。这些编队按不同的格式和缩写模式分组列出。当我设置数据收集表单时,我想不出一个处理数据的好方法.并选择将其全部存储为MySQL数据库中的字符串,并在稍后对其进行排序。

嗯,“晚些时候”--就像它会发生的那样--已经到来了。:-)

每一次战斗都有2+记录在数据库中--每个国家都有一个记录。每个记录都有一个编队文本字符串,列出志愿者选择添加的编队。

一些真实的例子:

空军第39师、第26炮兵师、第26炮兵师、第2空军陆战队野战师、第246步兵师

  • 247步枪师、第255坦克旅和第2空军陆战队野战师、党卫军骑兵师<代码>>H19第28坦克旅、第158步枪师、第135步枪师、第81坦克旅、第242坦克旅<代码>H 210<代码><代码>H 111第78步兵师<代码>H 212<代码><代码>H 113第3 Kure特种海军陆战队部队、Tulagi Seaapa义勇军第5兵营personnel

  • 1st营第5 5 0旅士兵兵营代码<

  • ><

  • >代码><代码><代码>

最终目标是让每支部队都有一个ID,这样就可以在整个战斗数据库中追踪其参与情况。编队层次结构(如1st Battalion (of the) 505th Infantry Regiment上的最后一项)也需要保留。在这种情况下,1st Battalion505th Infantry Regiment将被拆分,但是1st Battalion将被标记为属于505th.

在数据库方面,我想从当前的战斗信息表中提取编队字段,并创建三个新表:

代码语言:javascript
复制
FORMATION
[id] [name]

FORMATION_HIERARCHY
[id] [parent] [child]

FORMATION_BATTLE
[f_id] [battle_id]

解释起来很简单,但执行起来却很复杂。

我从SO社区中寻找的只是一些关于如何最好地解决这个问题的建议。理想情况下,有某种方法来解决这个我不知道的。然而,作为最后的手段,我总是可以编码一个分类框架,并打电话给我的志愿者通过2,500+记录排序.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-25 09:30:13

您已经将您的问题标记为与PHP相关的问题--但事实并非如此。

您建议用代理键( it )替换真正的标识符,但是真正的标识符在本质上是唯一的--所以您只是使数据结构比需要的更复杂。尽管如此,层次结构的叶部分可能仅在父节点的范围内是唯一的。

您需要解决的最重要的问题是,形成树是否总是两个层次。我怀疑有时它可能是一个,有时可能超过2个。你建议的结构在变深度树中不能很好地工作。

这可能有助于:

http://articles.sitepoint.com/article/hierarchical-data-database

结果表明,C.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2902753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档