Neo4j是: ·一個(gè)開源 ·無(wú)Schema ·沒(méi)有SQL ·圖形數(shù)據(jù)庫(kù)
該篇文章主要內(nèi)容包括:
1.Neo4j?CQL -?SET命令:
2.Neo4j?CQL -?Sorting排序:
3.Neo4j?CQL -?UNION聯(lián)盟:
4.Neo4j CQL - LIMIT和SKIP子句:
5.Neo4j?CQL -?合并:
6.Neo4j?CQL -?NULL值:
7.Neo4j?CQL -?IN操作符:
8.Neo4j?CQL -?圖形字體
9.Neo4j -?ID屬性
10..Neo4j -?方向關(guān)系
1.Neo4j?CQL -?SET命令:
·向現(xiàn)有節(jié)點(diǎn)或關(guān)系添加新屬性
·更新現(xiàn)有節(jié)點(diǎn)或關(guān)系的屬性值
SET子句語(yǔ)法
語(yǔ)法:?SET <property-name-list>
語(yǔ)法:?SET?屬性名列表
<property-name-list>語(yǔ)法
<node-label-name>.<property1-name>,
<node-label-name>.<property2-name>,
......
<node-label-name>.<propertyn-name>

添加新屬性

更新屬性值

2.Neo4j?CQL -?Sorting排序:
·MATCH?搭配?ORDER?BY? 對(duì)返回的結(jié)果排序
·默認(rèn)是升序,降序需使用DESC子句
ORDER?BY子句語(yǔ)法
語(yǔ)法:?ORDER?BY <property-name-list> [DESC]
語(yǔ)法:?ORDER?BY?屬性名列表 [DESC]




3.Neo4j?CQL -?UNION聯(lián)盟:
·它將兩組結(jié)果中的公共行組合并返回到一組結(jié)果中。?避免重復(fù)行返回
·限制:?列名稱應(yīng)該相同,列的數(shù)據(jù)類型應(yīng)該相同
UNION子句語(yǔ)法
<MATCH Command1>
UNION
<MATCH Command2>
UNION ALL子句
它結(jié)合并返回兩個(gè)結(jié)果集的所有行成一個(gè)單一的結(jié)果集。? 它返回兩節(jié)點(diǎn)的重復(fù)行
UNION?ALL子句語(yǔ)法
<MATCH Command1>
UNION ALL
<MATCH Command2>
先自己創(chuàng)建一些節(jié)點(diǎn)
CREATE(p:Person {name:"布口袋_天晴了1",sex:"男",age:18})
CREATE(p:Person {name:"布口袋_天晴了2",sex:"男",age:16,school:"CQUPT"})
CREATE(p:Person {name:"布口袋_天晴了2",sex:"男",age:16,school:"CQUPT"})
CREATE(p:Person {name:"布口袋_天晴了2",sex:"男",age:16,school:"CQUPT"})
CREATE(p:Person {name:"布口袋_天晴了3",sex:"男",age:26,school:"CQUPT",school:"YANSHAN"})





4.Neo4j CQL - LIMIT和SKIP子句:
·LIMIT子句用來(lái)過(guò)濾或限制查詢返回的行數(shù),它修剪結(jié)果集定部的結(jié)果。
LIMIT子句語(yǔ)法
語(yǔ)法:?LIMIT <number>
語(yǔ)法:?LIMIT?數(shù)量
SKIP子句語(yǔ)法 (目前這個(gè)語(yǔ)法不管用)
語(yǔ)法: SKIP <number>
語(yǔ)法:?SKIP?數(shù)量


5.Neo4j?CQL -?合并:
Neo4j?使用CQL?MEGER命令
·創(chuàng)建節(jié)點(diǎn),關(guān)系,屬性
·為從數(shù)據(jù)庫(kù)檢索數(shù)據(jù)
MERGE =?CREATE +MATCH
Neo4j CQL MEGER命令在圖中搜索給定模式,如果存在,則返回結(jié)果。如果不存在,則它創(chuàng)建新的節(jié)點(diǎn)、關(guān)系并返回結(jié)果。
Neo4j CQL CREATE命令總是向數(shù)據(jù)添加新的節(jié)點(diǎn)。
Neo4j?CQL?MERGE命令將新的節(jié)點(diǎn)添加到數(shù)據(jù)庫(kù),只有當(dāng)它不存時(shí)。
MERGE語(yǔ)法
MERGE(<node-name>:<label-name> {<property1-name>:<property1-value>,
......
<propertyn-name>:<propertyn-value>})

6.Neo4j?CQL -?NULL值:
Neo4j CQL將空值視為對(duì)節(jié)點(diǎn)或關(guān)系的屬性的缺失值或未定義值。

過(guò)濾掉name為NULL的項(xiàng)

過(guò)濾判斷條件:
WHERE xxx IS NULL
WHERE?xxx?IS?NOT?NULL
7.Neo4j?CQL -?IN操作符:
IN運(yùn)算符,提供值的集合。
IN操作符語(yǔ)法
語(yǔ)法: IN[<Collection-of-values>]


8.Neo4j?CQL -?圖形字體:

9.Neo4j -?ID屬性:
在Neo4j中,“Id”是節(jié)點(diǎn)和關(guān)系的默認(rèn)內(nèi)部屬性。 這意味著,當(dāng)我們創(chuàng)建一個(gè)新的節(jié)點(diǎn)或關(guān)系時(shí),Neo4j數(shù)據(jù)庫(kù)服務(wù)器將為內(nèi)部使用分配一個(gè)數(shù)字。 它會(huì)自動(dòng)遞增。? ?
10.Neo4j -?方向關(guān)系:
語(yǔ)法上的方向: () - [] -> ()
參考文章: