2013-03-13 133 views
1

我有這個疑問,在我的ColumnFamily中的所有列名是Unix timestamp.if我realice此查詢我有這樣的信息:卡桑德拉CQL timeunix範圍查詢

SELECT FIRST 10000 '631144800'..'1363176066' FROM datas where KEY='users'; 
    Bad Request: range finish must come after start in traversal order 

但是,如果我之前放一個0第一次約會:

SELECT FIRST 10000 '0631144800'..'1363176066' FROM datas where KEY='users'; 

它的工作原理,這是一個錯誤?我不知道爲什麼它在第一個查詢

doesn't工作如果長字符串的少它給了我永遠同樣的問題,我試着用999999999並給出了相同的錯誤

回答

1

您需要將列比較器設置爲LongType,以便Cassandra執行數字比較而不是詞典對比(默認值)。

不幸的是,你不能在現有的數據上改變這一點。如果您無法重寫數據,則必須將零點填充。