2014-02-25 278 views
3

映射值比方說,我有列族是這樣的:查詢在卡桑德拉

CREATE TABLE test(
id text, 
meta map <text, text>, 
PRIMARY KEY (key) 
); 

然後我把一些數據,我地圖,例如:{'username' : 'ivan'}

我想通過meta圖中的元素查詢我的測試列族。事情是這樣的:

SELECT * FROM test WHERE meta['username'] = 'ivan';

根據卡桑德拉documentation這應該是可能的:

正如其名稱所暗示的,地圖一件事映射到另一個。地圖是名稱 和一對類型值。使用地圖類型,您可以將 時間戳相關信息存儲在用戶配置文件中。 地圖的每個元素都內部存儲爲一個您可以修改的Cassandra列, 替換,刪除和查詢。

但我找不到任何這個在線的例子,所以這是真的有可能嗎?

感謝, 伊萬

回答

1

查詢這意味着您可以在使用select語句不是說你可以在WHERE子句中使用它得到。這就是爲什麼你不能將地圖作爲主鍵的一部分。