Neo4j COL語法之UNION/LIMIT/SKIP

UNION

與SQL一樣,Neo4j CQL有兩個子句,將兩個不同的結果合併成一組結果

  • UNION
  • UNION ALL
  • UNION子句 它將兩組結果中的公共行組合並返回到一組結果中。 它不從兩個節點返回重複的行。
  • 限制: 結果列類型和來自兩組結果的名稱必須匹配,這意味着列名稱應該相同,列的數據類型應該相同。

我們將採取一個銀行應用程序的節點:信用卡式和借記卡解釋UNION子句

創建信用卡節點數據
create (cc:CreditCard{id:“123”,name:“abc”,number:“5555”,cvv:121})
create (cc:CreditCard{id:“124”,name:“abe”,number:“5553”,cvv:121})
create (cc:CreditCard{id:“125”,name:“abf”,number:“5552”,cvv:121})
create (cc:CreditCard{id:“126”,name:“abg”,number:“5551”,cvv:121})

創建借記卡數據的節點
create (dc:DebitCard{id:“123”,name:“abc”,number:“5555”})
create (dc:DebitCard{id:“124”,name:“abe”,number:“5553”})
create (dc:DebitCard{id:“225”,name:“abf”,number:“5552”})
create (dc:DebitCard{id:“226”,name:“abg”,number:“5551”})

tips:union的列個數,列類型,類名稱必須一致纔會被union且數據去重,union all 則不會去重 同sql用法一樣

match(cc:CreditCard)
return cc.id as id,cc.name as name,cc.number as number  #必須使用別名才能匹配否則語法報錯,因爲所在節點名稱不一樣 cc,dc
union 
match(dc:DebitCard)
return dc.id as id ,dc.name as name,dc.number as number 

unionall用法

match(cc:CreditCard)
return cc.id as id,cc.name as name,cc.number as number 
union all
match(dc:DebitCard)
return dc.id as id ,dc.name as name,dc.number as number 

LIMIT

  • Neo4j CQL已提供“LIMIT”子句來過濾或限制查詢返回的行數。 它修剪CQL查詢結果集底部的結果。

語法

match (cc:CreditCard)
return cc
limit 2 # 返回2條數據

SKIP

  • skip的作用呢就是忽略前幾行,從而可以實現咱們想要的顯示後幾行的功能

語法

match (cc:CreditCard)
return cc
skip 1  #該語句的意思爲跳過第一行從第二行開始返回餘下數據
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章