【发布时间】:2022-06-21 22:02:08
【问题描述】:
我正在寻找一种方法来破坏单元格内的数据并创建新行以回收另一个单元格的值,需要一些帮助。
| ROLE | ROLE RIGHTS |
|---|---|
| AB-ATL | =READ;=TOTAL;=HAPPY;=MAD |
希望能够写到我可以获得以下结果的地方
| ROLE | ROLE RIGHTS |
|---|---|
| AB-ATL | READ |
| AB-ATL | TOTAL |
| AB-ATL | HAPPY |
| AB-ATL | MAD |
因此将单元格值分成 4 行,其中常量为角色。这是通过 SUBSTRING 完成的吗??
【问题讨论】:
-
您可以编写一个递归查询来遍历子字符串(或者在Oracle中编写一个PL/SQL流水线函数来拆分字符串)。
-
这里的问题其实是数据库。如果您对单独的角色权限感兴趣,请将它们单独存储,否则您将违反第一范式。
-
将您的数据库模型至少标准化为 1NF:“每列一个值”。这个“数据库 101”知识。