Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Neo4j - Buat Hubungan menggunakan Cypher

Sama seperti membuat node di Neo4j, kita dapat menggunakan CREATE pernyataan untuk membuat hubungan antara node tersebut.

Pernyataan untuk membuat hubungan terdiri dari CREATE , diikuti dengan detail hubungan yang Anda buat.

Contoh

Mari kita buat hubungan antara beberapa node yang telah kita buat sebelumnya. Pertama, mari kita ciptakan hubungan antara artis dan album.

Kami akan membuat hubungan berikut:

Berikut Cypher CREATE pernyataan untuk membuat hubungan di atas:

MATCH (a:Artist),(b:Album)
WHERE a.Name = "Strapping Young Lad" AND b.Name = "Heavy as a Really Heavy Thing"
CREATE (a)-[r:RELEASED]->(b)
RETURN r

Penjelasan Kode Di Atas

Pertama, kami menggunakan MATCH pernyataan untuk menemukan dua simpul yang ingin kita buat hubungannya.

Mungkin ada banyak node dengan Artis atau Album label jadi kami mempersempitnya menjadi hanya simpul yang kami minati. Dalam hal ini, kami menggunakan nilai properti untuk memfilternya. Kami menggunakan Nama properti yang sebelumnya telah kita tetapkan ke setiap node.

Lalu ada CREATE actual yang sebenarnya penyataan. Inilah yang menciptakan hubungan. Dalam hal ini, ia mereferensikan dua node dengan nama variabel (yaitu a dan b ) yang kami berikan kepada mereka di baris pertama. Hubungan dibuat dengan menggunakan pola kode ASCII, dengan panah yang menunjukkan arah hubungan:(a)-[r:RELEASED]->(b) .

Kami memberikan hubungan nama variabel r dan berikan hubungan jenis RELEASED (seperti dalam "band ini dirilis album ini"). Jenis hubungan dianalogikan dengan label simpul.

Menambahkan Lebih Banyak Hubungan

Contoh di atas adalah contoh hubungan yang sangat sederhana. Salah satu keunggulan Neo4j adalah menangani banyak hubungan yang saling berhubungan.

Mari kita membangun hubungan yang baru saja kita bangun, sehingga kita dapat melihat betapa mudahnya untuk terus membuat lebih banyak simpul dan hubungan di antara mereka. Jadi kita akan membuat satu simpul lagi dan menambahkan dua hubungan lagi.

Kita akan berakhir dengan grafik berikut:

Grafik ini menunjukkan bahwa Devin Townsend bermain di band, tampil di album yang dirilis band, dan dia juga yang memproduseri album tersebut.

Jadi mari kita mulai dengan membuat simpul untuk Devin Townsend:

CREATE (p:Person { Name: "Devin Townsend" })

Sekarang buat hubungan dan kembalikan grafiknya:

MATCH (a:Artist),(b:Album),(p:Person)
WHERE a.Name = "Strapping Young Lad" AND b.Name = "Heavy as a Really Heavy Thing" AND p.Name = "Devin Townsend" 
CREATE (p)-[pr:PRODUCED]->(b), (p)-[pf:PERFORMED_ON]->(b), (p)-[pl:PLAYS_IN]->(a)
RETURN a,b,p

Anda sekarang akan melihat grafik seperti pada tangkapan layar sebelumnya.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 10 praktik terbaik teratas di MySQL

  2. MySQL VARCHAR Panjang dan UTF-8

  3. Panduan Merancang Database Untuk Notifikasi Di MySQL

  4. Mengapa MySQL tidak mendukung presisi milidetik/mikrodetik?

  5. Kesalahan fatal:Panggilan ke fungsi yang tidak ditentukan session_register()