Neo4j 如何在电子邮件数据中保留 属性 但对发件人节点进行分组?
Neo4j How do you keep property but group sender nodes in email data?
我正在使用 neo4j 处理电子邮件数据。对于所有 5 封电子邮件和 5 封不同的 recipients
,我有相同的 sender
。发件人在发送的电子邮件中有一个 属性 the link
。在大多数数据库中,我可以做一个 groupby
让一个节点 name
'tv.test.com',到许多收件人 "One-to-many"
//CREATE SAMPLE NODES
CREATE (sender1:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5219922-h1=Ez1bLCN'})
CREATE (sender2:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5218922-h1=Ez1bLCN'})
CREATE (sender3:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5259922-h1=Ez1bLCN'})
CREATE (sender4:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5213822-h1=Ez1bLCN'})
CREATE (sender5:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5215922-h1=Ez1bLCN'})
CREATE (recipient1:Recipient{name:'rob@test.com'})
CREATE (recipient2:Recipient{name:'willy@test.com'})
CREATE (recipient3:Recipient{name:'milo@test.com'})
CREATE (recipient4:Recipient{name:'gonzo@test.com'})
CREATE (recipient5:Recipient{name:'leroy@test.com'})
CREATE (sender1)-[:TO]->(recipient1)
CREATE (sender2)-[:TO]->(recipient2)
CREATE (sender3)-[:TO]->(recipient3)
CREATE (sender4)-[:TO]->(recipient4)
CREATE (sender5)-[:TO]->(recipient5)
目前的样子:
这就是我想要的样子,我可以保留 属性 并按名称分组:
这些是一对多关系还是多对多关系?如果是,那么您可以将 URL 从发件人节点移动到收件人节点,这将解决您的问题。
如果不是,那么您可以将 URL 移动到关系 属性.
推荐的方法是创建一个新类型的节点 Email
并将 Sender
和 Recipient
连接到它。
我正在使用 neo4j 处理电子邮件数据。对于所有 5 封电子邮件和 5 封不同的 recipients
,我有相同的 sender
。发件人在发送的电子邮件中有一个 属性 the link
。在大多数数据库中,我可以做一个 groupby
让一个节点 name
'tv.test.com',到许多收件人 "One-to-many"
//CREATE SAMPLE NODES
CREATE (sender1:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5219922-h1=Ez1bLCN'})
CREATE (sender2:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5218922-h1=Ez1bLCN'})
CREATE (sender3:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5259922-h1=Ez1bLCN'})
CREATE (sender4:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5213822-h1=Ez1bLCN'})
CREATE (sender5:Sender{name:'tv.test.com', url:'https://www.tv.test.com/5215922-h1=Ez1bLCN'})
CREATE (recipient1:Recipient{name:'rob@test.com'})
CREATE (recipient2:Recipient{name:'willy@test.com'})
CREATE (recipient3:Recipient{name:'milo@test.com'})
CREATE (recipient4:Recipient{name:'gonzo@test.com'})
CREATE (recipient5:Recipient{name:'leroy@test.com'})
CREATE (sender1)-[:TO]->(recipient1)
CREATE (sender2)-[:TO]->(recipient2)
CREATE (sender3)-[:TO]->(recipient3)
CREATE (sender4)-[:TO]->(recipient4)
CREATE (sender5)-[:TO]->(recipient5)
目前的样子:
这就是我想要的样子,我可以保留 属性 并按名称分组:
这些是一对多关系还是多对多关系?如果是,那么您可以将 URL 从发件人节点移动到收件人节点,这将解决您的问题。 如果不是,那么您可以将 URL 移动到关系 属性.
推荐的方法是创建一个新类型的节点 Email
并将 Sender
和 Recipient
连接到它。