【发布时间】:2017-11-10 20:55:28
【问题描述】:
比如说,有一个扁平的顺序层次结构表,其中特殊字符“+”表示层次结构级别
hr_table
ID FIELD1 My irrelevant comments
----------------
1 ASSETS No pluses - it means level0 hierarchy
2 +ASSETS_01 Level1 hierarchy
3 ++345667654 Level2 hierarchy
4 ++563255512 Level2 hierarchy
5 ...
有没有办法使用 SQL 在 MSACCESS 中创建字段结构?我正在尝试按如下方式构建最终数据:
final_data_table
ID LEVEL0 LEVEL1 LEVEL2 ...
-------------------------------------------
1 ASSETS ASSETS_01 345667654
2 ASSETS ASSETS_01 563255512
非常感谢任何/所有帮助!
【问题讨论】:
-
可以有多少个级别,并且总是会有最多级别的行(即,如果是 3 个级别,是否总是有 3 行来填充您的表格)?我知道您可以使用 VBA 在 Access 中处理,并且可以使用 Excel 重新格式化为扁平行。
-
什么标准决定了那些 Level2 数字与 ASSETS_01 一起而不是 ASSETS_02?
-
FIELD1 成员将需要检查以计算“+”的最大出现次数。这将确定最大级别数。但这几乎是预先确定的。比如说,最大级别数是 5(例如),它不会改变。
-
因为“++345667654”依次跟随更高层次的成员“+ASSETS_01”...如果它出现在表格的后面,跟随假设的成员“+ASSETS_02”,那么正确的 LEVEL1 层次结构将是资产_02。基本上,顺序完整性将“子”链接到最近列出的 LEVEL 层次结构描述符......
-
我也很怀疑。然后我同意@WayneG.Dunn,使用 VBA 循环结构读取记录集对象并将记录写入“临时”表(表是永久的,记录是临时的)。并且这假定 ID 值将始终增加并且可以依赖于正确排序记录。
标签: sql database ms-access data-structures