我有一个数据库,其中一个属性实际上带有两个(字符串由“;”分隔)。看看下面的例子:
例子
这是我的数据库 A(源),它有一个像这样的表:
事实上,这看起来一切正常,但是当你假设author
可以有一个或多个入口时。你会有这样的记录:
文档(id 1,作者“John Matt; Mary Knight”,摘要“Lorem ipsum...”,2015 年)
其中a_id
from table是在 tableAuthors
上引用的外键。author_id
Document
首先确保我将填写所有作者(这没有问题),然后将组作者分配给相应的文档(这是问题),因为我可能遇到这种情况
作者(id 1,姓名“John Matt”)(id 2,姓名“John Matt”)(id 2,姓名“Mary Knight”)
请注意,id 2将被插入到前面的示例中。
问题:
如何使用使用水壶的 ETL 过程来完成此过程?这是一个好的做法还是用“;”分隔的字符串属性就足够了?