2014-10-10 72 views
1

我想學習cassandra。我正在使用Windows社區版(2.0)Cassandra - CQL OR Operator

我的表架構是:

CREATE TABLE test.TestTable2 (
PK1 int, 
PK2 int, 
CK3 int, 
CK4 int, 
Dump text, 
PRIMARY KEY ((PK1,PK2,CK3),CK4) 
); 

我要查詢的轉儲值(PK1=1 and Pk2 =2 and Ck3 =5 and CK4 in (4,5)) or (PK1=2 and Pk2 =2 and Ck3 =5 and CK4 in (4,5))。 我無法使用或使用條件,可有人建議我該怎麼辦,在CQL

回答

1

沒有爲OR運營商不支持:你想要做的是打2個分區,因此必須做什麼兩個不同的查詢。

Query 1: (PK1=1 and Pk2 =2 and Ck3 =5 and CK4 in (4,5)) 
Query 2: (PK1=2 and Pk2 =2 and Ck3 =5 and CK4 in (4,5)) 

您可以通過自己實現「短路」:首先,你希望有更大的可能性檢索結果中查詢執行 - 如果你有結果停止你的過程中,如果不執行第二查詢。