建立
(1)單獨建立Label:
CREATE (n:Label1)
create (:Label1 {site_code:"10002",name:"智聯招聘(Zhaopin)"})
(2)建立Label并且新增一個節點,這些節點包含一些屬性:
create(:newLabel{id:'',name:'學科研究',tag_name:'學科研究',skill_root:'',pos:'',isconcept:'1',tag_type:'文本标簽',skill_level:'',skilllevel_code:'',job_id:'',insert_time:'2020-04-10 10:52:54'})
(3)建立Label并且新增n個節點(批量資料導入)
通過本地csv檔案(資料)導入到資料庫中,label自動建立,并将csv中字段名作為label的各個屬性
LOAD CSV WITH HEADERS FROM "file:///tzb/recruit_websites/Label1.csv" AS row CREATE (n:Label1) SET n = row
LOAD CSV WITH HEADERS FROM "file:///tzb/recruit_websites/Label2.csv" AS row CREATE (n:Label2) SET n = row
LOAD CSV WITH HEADERS FROM "file:///tzb/recruit_websites/Label3.csv" AS row CREATE (n:Label3) SET n = row
csv資料示例:
指定字段名(屬性名) ,下面是資料示例
code,name,level,parent
10000,招聘網站,1,0
10001,全國大型招聘網站,2,1
10002,專業招聘網站,2,1
10003,地方性網站,2,1
10004,一般性招聘網站,2,1
(4)給節點新增屬性(或修改屬性值)
MATCH (n:Label1) where n.name ='大學學曆' RETURN n LIMIT 25
(5)建立索引
CREATE INDEX ON :City(code)
==============================================================================
删除
(1)删除Label
MATCH (n:Label1) delete n
(2)删除節點
MATCH (n:Label1) where n.name='工程副總' delete n
(3)删除Label的關系
match (c1)-[t]->(c2:Label1) delete t
(4)删除Label之間的關系
match (c1:Label1)-[t]->(c2:Label2) delete t
(4)删除節點之間的關系
match (c1:Label1)-[t]->(c2:Label2) where c1.name='财務規則' and c2.name='國家财務' delete t
==============================================================================
關系
建立關系:
(1)建立Label之間的關聯關系
--Label1關聯Label2
MATCH (c1:Label1),(c2:Label2)
WHERE c1.code = c2.parent_code
CREATE (c1)-[r:下屬]->(c2) set r.name = '下屬'
(2)建立節點之間的關聯關系
match(c1:Label1),(c2:Label1) where c1.name='耗材' and c2.name='規定臨床試驗機關資料' CREATE (c1)-[r:相關技能]->(c2) set r.name='相關技能'
(3)建立節點之間的關聯關系(一對多,如)
Label1關聯Label2
MATCH (c1:Label1),(c2:Label2)
WHERE c1.jd Contains c2.name
CREATE (c1)-[r:技能]->(c2) set r.name='技能'
Label1關聯Label2
MATCH (c1:Label1),(c2:Label2)
WHERE c1.jd Contains c2.tag_name and toInt(c1.id) <70000
CREATE (c1)-[r:技能]->(c2) set r.name='技能'
==============================================================================
查詢
查詢節點:
MATCH (Label1) where n.name = '工程副總' RETURN n LIMIT 25
查詢關系:
查詢Label之間的關聯關系
match (c1:Label1)-[t]->(c2:Label2) return c1,t,c2
查詢某個label所有關系
match (c1)-[t]->(c2:Label1) return c1,t,c2
查詢節點之間的關聯關系
match (c1:Label1)-[t]->(c2:Label2) where c1.name='财務規則' and c2.name='國家财務' return c1,t,c2 limit 10
檢視label有多少條資料
MATCH (n:Job) RETURN count(n)
檢視最小最大id
MATCH (n:Job) RETURN min(toInt(n.id))
MATCH (n:Job) RETURN max(toInt(n.id))
通過nodeId查詢唯一節點:
MATCH (m) where id(m)=12338735 RETURN m
==============================================================================
修改:
修改标簽:
MATCH (n:oldLabel) REMOVE n:oldLabel SET n:newLabel