2014-12-22 74 views
0

在卡桑德拉,您可以添加和使用新列像這樣的表:如何尋找一個表,一個未定義的列

cqlsh:mysite> CREATE TABLE mytable (
    url timeuuid, 
    PRIMARY KEY (url) 
); 
cqlsh:mysite> ALTER TABLE mytable ADD tag_tagX text; 
cqlsh:mysite> INSERT INTO mytable (url) VALUES (now()); 
cqlsh:mysite> SELECT * from mytable; 

url         | tag_tagx 
--------------------------------------+---------- 
ad47de80-8a2c-11e4-8ab4-eb66c236961e |  null 

(1 rows) 

cqlsh:mysite> CREATE INDEX ON mytable(tag_tagX); 
cqlsh:mysite> SELECT * FROM mytable WHERE tag_tagX = null; 
code=2200 [Invalid query] message="Unsupported null value for indexed column tag_tagx" 

自卡桑德拉讓行的INSERT語句中不指定某些列,怎麼能我們選擇沒有此列的行已使用

+1

可能的[如何搜索使用CQL的空/空字段的記錄?](http://stackoverflow.com/questions/20981075/how-can-i-search-for-records-that -have-a-null-empty-field-using-cql) – AlexMeng

+0

@AlexMeng:我沒有重新回顧問題標題,我修正了它,謝謝。你的鏈接的答案是相似的,但沒有關注面對這種情況時應採取的解決方法......我們如何創建一個SELECT來搜索列中不包含任何值的行? – Alain

+1

您無法在Cassandra中選擇null的值。你將不得不解決它。 – AlexMeng

回答

1

您無法在Cassandra中選擇空值。

相關問題