1
我正在使用Cassandra數據庫。我創建了一個有10列的列族。從Cassandra數據庫獲取指定列數據不是所有列數據
現在我只想檢索我需要的列。我不需要從Cassandra數據庫中檢索所有列值。
假設如果我的列族users
以下有列。
colA
colB
colC
colD
而且我只需要從Cassandra數據庫獲取colA and colB
數據。那麼我應該怎麼做?我不想從Cassandra獲取所有列數據,然後循環獲取所需的列。
東西喜歡 -
SELECT colA, colB from table1;
我與Pelops client
工作。
以下是我的代碼。
public void readTest() {
// read back the data we just wrote
Selector selector = Pelops.createSelector(poolName);
List<Column> columns = selector.getColumnsFromRow(colFamilyName, rowKey, false, ConsistencyLevel.ONE);
System.out.println("Name: " + Selector.getColumnStringValue(columns, "name"));
System.out.println("Age: " + Selector.getColumnValue(columns, "age").toInt());
}
感謝Zanson的建議。但是在上面的語法中,我找不到應該在哪裏指定要檢索的列名稱?你能提供一個簡單的例子嗎?謝謝您的幫助。 – ferhan 2013-04-09 22:49:48
在colPredicate中。例如 SlicePredicate myPredicate = Selector.newColumnsPredicate(「mycol1」,「mycol2」); – 2013-04-10 06:40:22