Nodes এবং Relationships এর জন্য Query লেখা

Cypher Query Language (CQL) পরিচিতি - নিওফোরজে (Neo4J) - Database Tutorials

398

Neo4j-তে Cypher Query Language (CQL) ব্যবহার করে নোড এবং রিলেশনশিপ তৈরি, আপডেট, মুছে ফেলা এবং অনুসন্ধান করা হয়। এটি Neo4j-এর Graph Database এর জন্য বিশেষভাবে ডিজাইন করা একটি ভাষা।


Nodes তৈরি করার জন্য Query

1. একটি Node তৈরি করা

নিচের উদাহরণে একটি Person লেবেলসহ নোড তৈরি করা হচ্ছে:

CREATE (a:Person {name: "John", age: 30})
  • Person: নোডের লেবেল।
  • name এবং age: নোডের প্রপার্টি।

2. একাধিক Node তৈরি করা

CREATE (a:Person {name: "Alice"}), (b:Person {name: "Bob"})

এটি একই সাথে Alice এবং Bob নামের দুটি নোড তৈরি করবে।


Relationships তৈরি করার জন্য Query

1. দুই নোডের মধ্যে Relationship তৈরি

CREATE (a:Person {name: "Alice"})-[:FRIEND]->(b:Person {name: "Bob"})
  • Alice এবং Bob দুটি নোড।
  • [:FRIEND]: তাদের মধ্যে FRIEND সম্পর্ক তৈরি করেছে।

2. বিদ্যমান নোডের মধ্যে Relationship তৈরি

MATCH (a:Person {name: "Alice"}), (b:Person {name: "Bob"})
CREATE (a)-[:FRIEND]->(b)
  • MATCH দ্বারা বিদ্যমান নোডগুলো খুঁজে বের করা হয়।
  • তারপর CREATE দ্বারা সম্পর্ক তৈরি করা হয়।

3. Relationship-এর সাথে প্রপার্টি যোগ করা

MATCH (a:Person {name: "Alice"}), (b:Person {name: "Bob"})
CREATE (a)-[:FRIEND {since: 2023}]->(b)

এখানে since: 2023 হলো Relationship-এর একটি প্রপার্টি।


Nodes এবং Relationships অনুসন্ধান করার জন্য Query

1. সমস্ত Node অনুসন্ধান করা

MATCH (n)  
RETURN n

এটি সমস্ত নোডকে ফিরিয়ে দেবে।

2. নির্দিষ্ট লেবেলের Node অনুসন্ধান

MATCH (n:Person)  
RETURN n

এটি শুধুমাত্র Person লেবেলের নোডগুলোকে রিটার্ন করবে।

3. নির্দিষ্ট প্রপার্টির ভিত্তিতে Node অনুসন্ধান

MATCH (n:Person {name: "Alice"})  
RETURN n

এটি নাম "Alice" এর সাথে মিলে যাওয়া নোডকে দেখাবে।

4. নোড এবং তাদের Relationship প্রদর্শন

MATCH (a:Person)-[r:FRIEND]->(b:Person)  
RETURN a, r, b
  • এটি Person নোড এবং তাদের মধ্যে FRIEND সম্পর্ক দেখাবে।

Nodes এবং Relationships আপডেট করার জন্য Query

1. Node-এর প্রপার্টি আপডেট করা

MATCH (n:Person {name: "Alice"})  
SET n.age = 25  
RETURN n

এটি Alice নোডের age প্রপার্টি আপডেট করবে।

2. Relationship-এর প্রপার্টি আপডেট করা

MATCH (a:Person {name: "Alice"})-[r:FRIEND]->(b:Person {name: "Bob"})
SET r.since = 2022  
RETURN r

এটি FRIEND Relationship-এর since প্রপার্টি আপডেট করবে।


Nodes এবং Relationships মুছে ফেলার জন্য Query

1. একটি Node মুছে ফেলা

MATCH (n:Person {name: "Alice"})  
DELETE n

Note: নোডের সাথে সংযুক্ত কোনো Relationship থাকলে এটি কাজ করবে না।

2. নোড এবং তার Relationship মুছে ফেলা

MATCH (n:Person {name: "Alice"})  
DETACH DELETE n

DETACH DELETE নোড এবং তার সমস্ত Relationship একসাথে মুছে ফেলে।

3. Relationship মুছে ফেলা

MATCH (a:Person)-[r:FRIEND]->(b:Person)  
DELETE r

এটি FRIEND Relationship মুছে ফেলবে।


সম্পূর্ণ উদাহরণ

নিচে একটি সম্পূর্ণ উদাহরণ দেওয়া হলো:

// Node তৈরি করা
CREATE (a:Person {name: "Alice"}), (b:Person {name: "Bob"})

// Relationship তৈরি করা
CREATE (a)-[:FRIEND {since: 2023}]->(b)

// নোড এবং Relationship অনুসন্ধান
MATCH (a:Person)-[r:FRIEND]->(b:Person)
RETURN a, r, b

// Relationship-এর প্রপার্টি আপডেট করা
MATCH (a:Person {name: "Alice"})-[r:FRIEND]->(b:Person {name: "Bob"})
SET r.since = 2024
RETURN r

// নোড মুছে ফেলা
MATCH (n:Person {name: "Bob"})
DETACH DELETE n

সারাংশ

Neo4j-এ Cypher Query Language (CQL) ব্যবহার করে নোড এবং রিলেশনশিপ তৈরি, আপডেট, অনুসন্ধান এবং মুছে ফেলা যায়। CQL অত্যন্ত ব্যবহার-বান্ধব এবং গ্রাফ ডেটাবেসের সাথে কাজ করার জন্য শক্তিশালী একটি টুল। নোডের মাধ্যমে এনটিটি সংরক্ষণ এবং এজের মাধ্যমে তাদের সম্পর্ক সংজ্ঞায়িত করা হয়, যা জটিল ডেটা বিশ্লেষণকে সহজ ও কার্যকর করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...