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 #該語句的意思爲跳過第一行從第二行開始返回餘下數據