【发布时间】:2019-03-08 20:14:43
【问题描述】:
我有 3 组对象,1 组可以通过唯一键映射到相应的组。同一组可以通过不同的键映射到第三组。我需要能够将所有这些映射到一个新的组合集中。这些集合都有不同的属性。
唯一计数[用户][部门]
许多计数[发票]
每个唯一的 [user] 都属于 (comitID) 找到的特定 [sector],但同一个 [user] 可以有许多 [invoices]。如果您熟悉关系数据库,则为一对多字段
const users= [ // Unique Entries
{name:'user1', comitId: 'aa1'},
{name:'user2', comitId: 'aa2'}
]
const sector= [ // Unique Entries
{comitID: 'aa1', department: 'finance'},
{comitID: 'aa2', department: 'marketing'},
{comitID: 'aa3', department: 'engineering'}
]
const invoices= [ // Multiple Entries
{name: 'user1' : statementDate: '2/1/2019'},
{name: 'user1' : statementDate: '2/14/2019'},
{name: 'user2' : statementDate: '2/1/2019'}
]
新套装应该是这样的。不能包含声明日期的列表,它们都需要是一个新对象。
const results = [
{name: 'user1', comitId: 'aa1', department: 'finance', statementDate: '2/1/2019'},
{name: 'user1', comitId: 'aa1', department: 'finance', statementDate: '2/14/2019'},
{name: 'user2', comitId: 'aa2', department: 'marketing', statementDate: '2/1/2019'}
]
我一直在 Excel 中使用 vlookups 和公式进行尝试。这些文件的唯一计数往往为 10k,而发票则高达 40k。
【问题讨论】:
-
你有什么尝试过的吗?这看起来确实像您可以在 excel 或 sql 中解决的问题。
-
这里有一个类似的问题可能会有所帮助:Analog to SQL 'JOIN' for Javascript objects?
标签: javascript mysql node.js database