Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What Not To Do With Databases

Tim Perry
November 11, 2014

What Not To Do With Databases

Tim Perry

November 11, 2014
Tweet

More Decks by Tim Perry

Other Decks in Programming

Transcript

  1. View Slide

  2. View Slide

  3. View Slide

  4. View Slide

  5. View Slide

  6. View Slide

  7. View Slide

  8. View Slide

  9. CREATE TABLE Employee (
    id int primary key,
    name varchar(255) not null,
    manager_id int
    );

    View Slide

  10. SELECT m.name
    FROM Employee e
    INNER JOIN Employee m
    ON e.manager_id = m.id
    WHERE e.id = 100;

    View Slide

  11. WITH RecursiveCte AS (
    SELECT e.id, e.name
    FROM Employee e
    WHERE parent_id = 100
    UNION ALL
    SELECT e.id, e.name
    FROM Employee e
    INNER JOIN RecursiveCte rcte
    ON e.parent_id = rcte.id
    )
    SELECT Name FROM RecursiveCte;

    View Slide

  12. View Slide

  13. MATCH
    (e { id: 100 })-[:MANAGED_BY]->(m)
    RETURN m.name;

    View Slide

  14. MATCH
    (m { id: 100 })<-[:MANAGED_BY*]-(e)
    RETURN e.name;

    View Slide

  15. MATCH
    (m { id: 100 })<-[:MANAGED_BY*]-(e)
    RETURN e.name;

    View Slide

  16. View Slide

  17. View Slide

  18. View Slide

  19. View Slide

  20. View Slide

  21. View Slide

  22. View Slide

  23. View Slide

  24. View Slide

  25. View Slide

  26. View Slide

  27. View Slide

  28. View Slide