Skip to content

Instantly share code, notes, and snippets.

@MagnusVortex
Last active October 7, 2016 20:30
Show Gist options
  • Save MagnusVortex/cfd5030613db186ba938189c74d59939 to your computer and use it in GitHub Desktop.
Save MagnusVortex/cfd5030613db186ba938189c74d59939 to your computer and use it in GitHub Desktop.
create (d01:d{id:'D01'})
     , (e01:e{id:'E01'})
     , (e02:e{id:'E02'})
     , (e03:e{id:'E03'})
     , (e04:e{id:'E04'})
     , (d02:d{id:'D02'})
     , (e11:e{id:'E11'})
     , (e12:e{id:'E12'})
     , (e13:e{id:'E13'})
     , (e14:e{id:'E14'})
     , (d03:d{id:'D03'})
     , (e21:e{id:'E21'})
     , (e22:e{id:'E22'})
     , (e23:e{id:'E23'})
     , (e24:e{id:'E24'})
     , (d04:d{id:'D04'})
     , (e31:e{id:'E31'})
     , (e32:e{id:'E32'})
     , (e33:e{id:'E33'})
     , (e34:e{id:'E34'})
     , (d05:d{id:'D05'})
     , (e41:e{id:'E41'})
     , (e42:e{id:'E42'})
     , (e43:e{id:'E43'})
     , (e44:e{id:'E44'})
     , (de01:de{id:'DE01'}), (de01)-[:has]->(e01), (de01)-[:has]->(d01)
     , (de02:de{id:'DE02'}), (de02)-[:has]->(e02), (de02)-[:has]->(d01)
     , (de03:de{id:'DE03'}), (de03)-[:has]->(e03), (de03)-[:has]->(d01)
     , (de04:de{id:'DE04'}), (de04)-[:has]->(e04), (de04)-[:has]->(d01)
     , (de11:de{id:'DE11'}), (de11)-[:has]->(e11), (de11)-[:has]->(d02)
     , (de12:de{id:'DE12'}), (de12)-[:has]->(e12), (de12)-[:has]->(d02)
     , (de13:de{id:'DE13'}), (de13)-[:has]->(e13), (de13)-[:has]->(d02)
     , (de14:de{id:'DE14'}), (de14)-[:has]->(e14), (de14)-[:has]->(d02)
     , (de21:de{id:'DE21'}), (de21)-[:has]->(e21), (de21)-[:has]->(d03)
     , (de22:de{id:'DE22'}), (de22)-[:has]->(e22), (de22)-[:has]->(d03)
     , (de23:de{id:'DE23'}), (de23)-[:has]->(e23), (de23)-[:has]->(d03)
     , (de24:de{id:'DE24'}), (de24)-[:has]->(e24), (de24)-[:has]->(d03)
     , (de31:de{id:'DE31'}), (de31)-[:has]->(e31), (de31)-[:has]->(d04)
     , (de32:de{id:'DE32'}), (de32)-[:has]->(e32), (de32)-[:has]->(d04)
     , (de33:de{id:'DE33'}), (de33)-[:has]->(e33), (de33)-[:has]->(d04)
     , (de34:de{id:'DE34'}), (de34)-[:has]->(e34), (de34)-[:has]->(d04)
     , (de41:de{id:'DE41'}), (de41)-[:has]->(e41), (de41)-[:has]->(d05)
     , (de42:de{id:'DE42'}), (de42)-[:has]->(e42), (de42)-[:has]->(d05)
     , (de43:de{id:'DE43'}), (de43)-[:has]->(e43), (de43)-[:has]->(d05)
     , (de44:de{id:'DE44'}), (de44)-[:has]->(e44), (de44)-[:has]->(d05)
     , (a01:a{id:'A01'})
     , (b01:b{id:'B01'}), (a01)-[:has]->(b01)
     , (c01:c{id:'C01'}), (b01)-[:has]->(c01)
     , (c02:c{id:'C02'}), (b01)-[:has]->(c02)
     , (c03:c{id:'C03'}), (b01)-[:has]->(c03)
     , (c04:c{id:'C04'}), (b01)-[:has]->(c04)
     , (c05:c{id:'C05'}), (b01)-[:has]->(c05)
     , (b01)-[:has]->(de01)
     , (b01)-[:has]->(de02)
     , (b01)-[:has]->(de03)
     , (b01)-[:has]->(de21)
     , (b02:b{id:'B02'}), (a01)-[:has]->(b02)
     , (c11:c{id:'C11'}), (b02)-[:has]->(c11)
     , (c12:c{id:'C12'}), (b02)-[:has]->(c12)
     , (c13:c{id:'C13'}), (b02)-[:has]->(c13)
     , (b02)-[:has]->(de01)
     , (b02)-[:has]->(de02)
     , (b02)-[:has]->(de03)
     , (b02)-[:has]->(de04)
     , (b03:b{id:'B03'}), (a01)-[:has]->(b03)
     , (c21:c{id:'C21'}), (b03)-[:has]->(c21)
     , (b03)-[:has]->(de01)
     , (b04:b{id:'B04'}), (a01)-[:has]->(b04)
     , (c31:c{id:'C31'}), (b04)-[:has]->(c31)
     , (b05:b{id:'B05'}), (a01)-[:has]->(b05)
     , (a02:a{id:'A02'})
;
match (a:a)
with a
optional match (a)--(b:b), (b)--(c:c)
with a, b, collect(c.id) as cData
optional match (b)--(de:de), (de)--(d:d), (de)--(e:e)
with a, b, cData, {dId: d.id, eList: collect(e.id)} as d order by b.id
with a, {bId: b.id, c: cData, d: collect(d)} as b
return {a: a.id, b: collect(b)}
;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment