【问题标题】:getting data from cassandra using clauses使用子句从 cassandra 获取数据
【发布时间】:2011-11-11 23:14:32
【问题描述】:
有没有什么方法可以通过 phpcassa 使用 a 子句从 cassandra 获取数据?
我需要选择sum<10 所在的所有行。例如 phpcassa get_range() 中的函数只选择等于某些值的行。
【问题讨论】:
标签:
php
cassandra
phpcassa
【解决方案1】:
通常使用 PHPCassa,你会使用索引:
根据http://thobbs.github.com/phpcassa/tutorial.html //略有增强:
<?php
$column_family = new ColumnFamily($conn, 'Indexed1');
$index_exp_eq = CassandraUtil::create_index_expression('gender', 'male', $op='EQ');
$index_exp_gt = CassandraUtil::create_index_expression('sum', 10, $op='GT');
$index_clause = CassandraUtil::create_index_clause(array($index_exp_eq, $index_exp_gt));
$rows = $column_family->get_indexed_slices($index_clause);
// returns an Iterator over:
// array('winston smith' => array('birthdate' => 1984))
foreach($rows as $key => $columns) {
// Do stuff with $key and $columns
Print_r($columns)
}
?>
在您的场景中,您不能简单地使用 sum