Neo4j CQL - Tạo mối quan hệ
Trong Noe4j, một mối quan hệ là một phần tử mà chúng ta sử dụng để kết nối hai nút của một biểu đồ. Các mối quan hệ này có hướng, kiểu và các mẫu dữ liệu. Chương này hướng dẫn bạn cách -
- Tạo mối quan hệ
- Tạo mối quan hệ giữa các nút hiện có
- Tạo mối quan hệ với nhãn và thuộc tính
Tạo mối quan hệ
Chúng ta có thể tạo mối quan hệ bằng mệnh đề CREATE. Chúng tôi sẽ chỉ định mối quan hệ trong dấu ngoặc vuông “[]” tùy thuộc vào hướng của mối quan hệ mà nó được đặt giữa dấu gạch nối “-” và mũi tên “→” như thể hiện trong cú pháp sau.
Cú pháp
Sau đây là cú pháp để tạo mối quan hệ bằng mệnh đề CREATE.
CREATE (node1)-[:RelationshipType]->(node2)
Thí dụ
Trước hết, tạo hai nút Ind và Dhawan trong cơ sở dữ liệu, như hình dưới đây.
CREATE (Dhawan:player{name: "Shikar Dhawan", YOB: 1985, POB: "Delhi"})
CREATE (Ind:Country {name: "India"})
Bây giờ, hãy tạo một mối quan hệ có tên BATSMAN_OF giữa hai nút này là -
CREATE (Dhawan)-[r:BATSMAN_OF]->(Ind)
Cuối cùng, trả lại cả hai nút để xem mối quan hệ đã tạo.
RETURN Dhawan, Ind
Sao chép và dán truy vấn mong muốn trong dấu nhắc đô la và nhấn nút phát (để thực hiện truy vấn) được đánh dấu trong ảnh chụp màn hình sau.
Kết quả
Khi thực hiện, bạn sẽ nhận được kết quả sau.
Tạo mối quan hệ giữa các nút hiện có
Bạn cũng có thể tạo mối quan hệ giữa các nút hiện có bằng cách sử dụng MATCH mệnh đề.
Cú pháp
Sau đây là cú pháp để tạo mối quan hệ bằng mệnh đề MATCH.
MATCH (a:LabeofNode1), (b:LabeofNode2)
WHERE a.name = "nameofnode1" AND b.name = " nameofnode2"
CREATE (a)-[: Relation]->(b)
RETURN a,b
Thí dụ
Sau đây là một mẫu Cypher Query tạo mối quan hệ bằng cách sử dụng mệnh đề so khớp.
MATCH (a:player), (b:Country) WHERE a.name = "Shikar Dhawan" AND b.name = "India"
CREATE (a)-[r: BATSMAN_OF]->(b)
RETURN a,b
Để thực hiện truy vấn trên, hãy thực hiện các bước sau.
Step 1- Mở Ứng dụng máy tính để bàn Neo4j và khởi động Máy chủ Neo4j. Mở ứng dụng trình duyệt tích hợp sẵn của Neo4j bằng URLhttp://localhost:7474/ như thể hiện trong ảnh chụp màn hình sau.
Step 2 - Sao chép và dán truy vấn mong muốn trong dấu nhắc đô la và nhấn nút phát (để thực hiện truy vấn) được đánh dấu trong ảnh chụp màn hình sau.
Kết quả
Khi thực hiện, bạn sẽ nhận được kết quả sau.
Tạo mối quan hệ với nhãn và thuộc tính
Bạn có thể tạo mối quan hệ với nhãn và thuộc tính bằng mệnh đề CREATE.
Cú pháp
Sau đây là cú pháp để tạo mối quan hệ với nhãn và thuộc tính bằng mệnh đề CREATE.
CREATE (node1)-[label:Rel_Type {key1:value1, key2:value2, . . . n}]-> (node2)
Thí dụ
Sau đây là một mẫu Cypher Query tạo mối quan hệ với nhãn và thuộc tính.
MATCH (a:player), (b:Country) WHERE a.name = "Shikar Dhawan" AND b.name = "India"
CREATE (a)-[r:BATSMAN_OF {Matches:5, Avg:90.75}]->(b)
RETURN a,b
Để thực hiện truy vấn trên, hãy thực hiện các bước sau:
Step 1- Mở Ứng dụng máy tính để bàn Neo4j và khởi động Máy chủ Neo4j. Mở ứng dụng trình duyệt tích hợp sẵn của Neo4j bằng URLhttp://localhost:7474/ như thể hiện trong ảnh chụp màn hình sau.
Step 2 - Sao chép và dán truy vấn mong muốn trong dấu nhắc đô la và nhấn nút phát (để thực hiện truy vấn) được đánh dấu trong ảnh chụp màn hình sau.
Kết quả
Khi thực hiện, bạn sẽ nhận được kết quả sau.
Tạo một con đường hoàn chỉnh
Trong Neo4j, một đường dẫn được hình thành bằng cách sử dụng các mối quan hệ liên tục. Một đường dẫn có thể được tạo bằng mệnh đề create.
Cú pháp
Sau đây là cú pháp để tạo đường dẫn trong Neo4j bằng mệnh đề CREATE.
CREATE p = (Node1 {properties})-[:Relationship_Type]->
(Node2 {properties})[:Relationship_Type]->(Node3 {properties})
RETURN p
Thí dụ
Để thực hiện truy vấn trên, hãy thực hiện các bước sau:
Step 1- Mở Ứng dụng máy tính để bàn Neo4j và khởi động Máy chủ Neo4j. Mở ứng dụng trình duyệt tích hợp sẵn của Neo4j bằng URLhttp://localhost:7474/ như thể hiện trong ảnh chụp màn hình sau.
Step 2 - Sao chép và dán truy vấn mong muốn trong dấu nhắc đô la và nhấn nút phát (để thực hiện truy vấn) được đánh dấu trong ảnh chụp màn hình sau.
Kết quả
Khi thực hiện, bạn sẽ nhận được kết quả sau.