Как бы я это сделал, добавьте ярлык «Персона» на всех Банкиров и Клиентов.
CREATE CONSTRAINT ON (b:Person) ASSERT p.Email IS UNIQUE
CREATE CONSTRAINT ON (b:Banker) ASSERT p.Email IS UNIQUE
CREATE CONSTRAINT ON (b:Customer) ASSERT p.Email IS UNIQUE
CREATE (b:Person:Banker {Email: "123@mymail.com"})
CREATE (b:Person:Customer {Email: "321@mymail.com"})
CREATE (c:Person:Customer {Email: "123@mymail.com"})
Последний не удастся, так как Персона / Банкир уже имеет тот же адрес электронной почты.Затем вы также можете выполнить поиск в MATCH (p: Person {Email: "123@mymail.com"}) или даже b: Banker, c: Customer
Вы также можете сделать (p: Person: Customer: Banker)если человек всех трех.
Это также позволит вам сделать MERGE , которая создает запись, если она еще не существует.
Поскольку у вас уже естьБаза данных, которую вы можете сделать:
MATCH(b:Banker)
SET b:Person
MATCH(c:Customer)
SET c:Person