从Cassandra中根据名称选择特定列

时间:2015-09-22 16:21:11

标签: cassandra

我有一个cassandra数据库,可以根据应用程序的需要添加或删除列。列名以前缀RSSI开头。我想知道是否可以选择列名称为%RSSI%的所有列。在MYSQL中,您可以执行select count(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name ='MACTrain' AND column_name LIKE '%RSSI%'之类的操作。在cassandra有可能吗?如果不是,那么基于特定通配符选择列的解决方案是什么。

1 个答案:

答案 0 :(得分:2)

您可以通过查询system键空间来获取表的列元数据:

select * from system.schema_columns 
where keyspace_name = 'yourks' and columnfamily_name = 'yourtable';

对于Cassandra v3.0及更高版本,您可以使用新的system_schema键空间:

select * from system_schema.columns 
where keyspace_name = 'yourks' and table_name = 'yourtable';