Neo4j - Madde Nerede

SQL gibi Neo4j CQL, bir MATCH Sorgusunun sonuçlarını filtrelemek için CQL MATCH komutunda WHERE yan tümcesi sağlamıştır.

Sözdizimi

WHERE cümlesinin sözdizimi aşağıdadır.

MATCH (label)  
WHERE label.country = "property" 
RETURN label

Misal

Örneğe geçmeden önce, aşağıda gösterildiği gibi veritabanında beş düğüm oluşturun.

CREATE(Dhawan:player{name:"shikar Dhawan", YOB: 1985, runs:363, country: "India"}
CREATE(Jonathan:player{name:"Jonathan Trott", YOB:1981, runs:229, country:"South Africa"}
CREATE(Sangakkara:player{name:"Kumar Sangakkara", YOB:1977, runs:222, 
   country:"Srilanka"})
CREATE(Rohit:player{name:"Rohit Sharma", YOB: 1987, runs:177, country:"India"})
CREATE(Virat:player{name:"Virat Kohli", YOB: 1988, runs:176, country:"India"})
CREATE(Ind:Country {name: "India", result: "Winners"})

Aşağıda, WHERE cümlesini kullanarak Hindistan ülkesine ait tüm oyuncuları (düğümleri) döndüren örnek bir Cypher Sorgusu verilmiştir.

MATCH (player)  
WHERE player.country = "India" 
RETURN player

Yukarıdaki sorguyu yürütmek için aşağıdaki adımları uygulayın -

Step 1- Neo4j masaüstü Uygulamasını açın ve Neo4j Sunucusunu başlatın. URL'yi kullanarak Neo4j'nin yerleşik tarayıcı uygulamasını açınhttp://localhost:7474/ aşağıdaki ekran görüntüsünde gösterildiği gibi.

Step 2 - Dolar istemine istenen sorguyu kopyalayıp yapıştırın ve aşağıdaki ekran görüntüsünde vurgulanan oynat düğmesine (sorguyu yürütmek için) basın.

Sonuç

Çalıştırma sırasında aşağıdaki sonucu alacaksınız.

Birden Çok Koşul İçeren NEREDE Maddesi

Birden çok koşulu doğrulamak için WHERE yan tümcesini de kullanabilirsiniz.

Sözdizimi

Aşağıda, Neo4j'de birden çok koşulla WHERE yan tümcesini kullanmak için sözdizimi verilmiştir.

MATCH (emp:Employee)  
WHERE emp.name = 'Abc' AND emp.name = 'Xyz' 
RETURN emp

Misal

Aşağıda, iki koşul kullanarak Neo4j veritabanındaki düğümleri filtreleyen örnek bir Cypher Sorgusu yer almaktadır.

MATCH (player)  
WHERE player.country = "India" AND player.runs >=175 
RETURN player

Yukarıdaki sorguyu yürütmek için aşağıdaki adımları uygulayın -

Step 1- Neo4j masaüstü Uygulamasını açın ve Neo4j Sunucusunu başlatın. URL'yi kullanarak Neo4j'nin yerleşik tarayıcı uygulamasını açınhttp://localhost:7474/ aşağıdaki ekran görüntüsünde gösterildiği gibi.

Step 2 - Dolar istemine istenen sorguyu kopyalayıp yapıştırın ve aşağıdaki ekran görüntüsünde vurgulanan oynat düğmesine (sorguyu yürütmek için) basın.

Sonuç

Çalıştırma sırasında aşağıdaki sonucu alacaksınız.

Where Clause ile İlişkiyi Kullanma

İlişkileri kullanarak düğümleri filtrelemek için Where cümlesini de kullanabilirsiniz.

Misal

Veritabanında aşağıdaki grafiğin olduğunu varsayalım.

Aşağıda, aşağıda gösterildiği gibi WHERE cümlesini kullanarak Hindistan'ın en iyi skorunu almak için örnek bir Cypher Sorgusu yer almaktadır.

MATCH (n) 
WHERE (n)-[: TOP_SCORER_OF]->( {name: "India", result: "Winners"}) 
RETURN n

Yukarıdaki sorguyu yürütmek için aşağıdaki adımları uygulayın -

Step 1- Neo4j masaüstü Uygulamasını açın ve Neo4j Sunucusunu başlatın. URL'yi kullanarak Neo4j'nin yerleşik tarayıcı uygulamasını açınhttp://localhost:7474/ aşağıdaki ekran görüntüsünde gösterildiği gibi.

Step 2 - Dolar istemine istenen sorguyu kopyalayıp yapıştırın ve aşağıdaki ekran görüntüsünde vurgulanan oynat düğmesine (sorguyu yürütmek için) basın.

Sonuç

Çalıştırma sırasında aşağıdaki sonucu alacaksınız. Burada Neo4j'nin, TOP_SCORER_OF ilişkisine sahip olan düğümü Hindistan adındaki düğüme sahip ülkeyle döndürdüğünü görebilirsiniz.