Last active
October 15, 2021 19:01
-
-
Save GiuseppeMP/705ce0e3db4cf373af335fe3c770ebc0 to your computer and use it in GitHub Desktop.
neo4j-gist
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// subindo o neo4j local | |
// docker run \ ─╯ | |
// --name nome-que-vc-quiser-do-container \ | |
// -p 7474:7474 -p 7687:7687 \ | |
// -d \ | |
// -v $HOME/uma-folder-sua-pra-nao-perder-dados-do-container/data:/data \ | |
// -v $HOME/uma-folder-sua-pra-nao-perder-dados-do-container/logs:/logs \ | |
// -v $HOME/uma-folder-sua-pra-nao-perder-dados-do-container/import:/var/lib/neo4j/import \ | |
// -v $HOME/uma-folder-sua-pra-nao-perder-dados-do-container/plugins:/plugins \ | |
// --env NEO4J_AUTH=neo4j/test \ | |
// neo4j:latest | |
// analisando o meta schema | |
// deletando todos os nodes | |
MATCH (n) DETACH DELETE n; | |
// criando um nó simples, sem label | |
create(node) | |
// criando um nó com Label. É como se o Label fosse a Table e o Node fosse a Row em sí, mas é só uma analogia pra didatica, n sao equivalentes. | |
create(nome:Label) | |
// criando um nó com atributos/propriedades | |
create(nome:Label { prop: "value" }) | |
// fazendo uma busca simples com Match(equivalente SELECT SQL) | |
MATCH node:Label | |
where node.some == 'some' | |
return node | |
// creating relação entre nodes | |
// primeiro é preciso encontrar nos nós com Matchs | |
MATCH (node:Label), (node2:Label2) | |
where node.some = 'some' and node2.some = 'some' | |
// depois que encontrou os nós, criamos as relações, sintaxe: ()-[]->() ou ()<-[]-() | |
CREATE (node)-[r:relacao]->(node2) | |
// podesse criar varias relacoes | |
CREATE (node)-[r:relacao]->(node2) | |
RETURN node, node2 | |
A palavra create pode causar duplicidade de dados, mas voce pode trocar para MERGE. | |
merge(node) | |
// sobre performance https://neo4j.com/news/how-much-faster-is-a-graph-database-really/ | |
// ref neo4j in action | |
// alternativa opensource: https://www.graphfoundation.org |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment