この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
neo4j:よく使うコマンド [2020/07/21 07:10] ips |
neo4j:よく使うコマンド [2020/07/21 07:48] (現在) ips |
||
|---|---|---|---|
| ライン 3: | ライン 3: | ||
| [[https://gist.github.com/ykst/60ecf2b21fc1ed937ec01af163fdf6a0|逆引きCypher]] | [[https://gist.github.com/ykst/60ecf2b21fc1ed937ec01af163fdf6a0|逆引きCypher]] | ||
| [[https://neo4j.com/docs/cypher-manual/current/administration/databases/index.html|neo4j]] | [[https://neo4j.com/docs/cypher-manual/current/administration/databases/index.html|neo4j]] | ||
| + | |||
| + | ノードと呼ばれるオブジェクトを複数作成できる。 | ||
| + | ノードは同一ラベル、同一プロパティでも複数作成される。(idが異なる) | ||
| + | (ノード:ラベル{プロパティ1:xxx,プロパティ2:yyy}) | ||
| + | |||
| + | ノード間は方向性のあるリレーションで結ぶことができる。 | ||
| + | (ノード)-[:ラベル{プロパティ1:xxx,プロパティ2:yyy}]->(ノード) | ||
| + | |||
| + | リレーションを作成する場合は、同一プロパティのノードが複数作成可能なため、 | ||
| + | matchで検索した結果の変数を使って作成する。 | ||
| + | もしくは、createでノードの作成と同時にリレーションも作成する。 | ||
| + | |||
| + | <code> | ||
| + | #追加 | ||
| + | create(a:Person{name:"taro",age:44}) | ||
| + | create(b:Person{name:"hana",age:44}) | ||
| + | create(c:Person{name:"sabu",age:44}) | ||
| + | |||
| + | #検索 | ||
| + | match(n:Person)where n.name="taro" return n | ||
| + | |||
| + | #更新 | ||
| + | match(n:Person)where n.name="taro" set n.age=45 | ||
| + | |||
| + | #追加 | ||
| + | create(a:Person{name:"hana",age:10}) | ||
| + | create(a:Person{name:"sabu",age:30}) | ||
| + | |||
| + | #リレーション追加 taroからtaro以外のノードへlikeのリレーションを作成 | ||
| + | match(a:Person)where a.name="taro" | ||
| + | match(b:Person)where b.name<>"taro" | ||
| + | create (a)-[:like]->(b) | ||
| + | |||
| + | #リレーションの削除 | ||
| + | MATCH ()-[e:like]-() delete e | ||
| + | |||
| + | #リレーションを内部ID指定で削除 | ||
| + | match()-[a]->() where ID(a)=21 delete a | ||
| + | |||
| + | #ノードの削除 | ||
| + | match(a) where a.name="taro" delete a | ||
| + | |||
| + | #ノードを内部ID指定で削除 | ||
| + | match(a) where ID(a)=21 delete a | ||
| + | |||
| + | #全リレーションの削除 | ||
| + | MATCH ()-[e]-() delete e | ||
| + | |||
| + | #全ノードとリレーションの削除 | ||
| + | MATCH (n) DETACH DELETE n | ||
| + | </code> | ||
| + | |||
| <code> | <code> | ||
| ライン 69: | ライン 121: | ||
| WHERE js.name = "Johan" AND surfer.hobby = "surfing" | WHERE js.name = "Johan" AND surfer.hobby = "surfing" | ||
| RETURN DISTINCT surfer | RETURN DISTINCT surfer | ||
| - | |||
| - | |||
| - | |||
| </code> | </code> | ||