Я выполняю запрос агрегации ClusterPoint из моего приложения PHP
используя php_api. Вот пример кода, который я использую:
$query = "<query><Make>subaru</Make></query>
<docs>20</docs>
<offset>0</offset>
<aggregate>SUM(Count), Type, Fuel GROUP BY Type, Fuel </aggregate>";
$request = new CPS_Request('search');
$request -> setExtraXmlParam($query);
$response = $cpsConn->sendRequest($request);
$aggregates = $response -> getAggregate(DOC_TYPE_ARRAY);
$type_fuel = array_pop($aggregates);
var_dump($type_fuel[0]);
ClusterPoint API возвращает данные в виде массива в соответствии с запросом и вычисляет «ключ»
нормализация формулы SUM(Count)
:
array (size=3)
'SUM_Count' => string '2' (length=1)
'Type' => string 'Lorry' (length=5)
'Fuel' => string 'Petrol & gas' (length=12)
Когда я меняю запрос, «SUM_Count» часто становится чем-то другим, поэтому я ищу способ «псевдонима» результата формулы и получения более согласованного ключа для значения «2».
Вы можете создать псевдоним, как в SQL, используя конструкцию «as»:
<aggregate>SUM(Count) as sum_c, Type, Fuel GROUP BY Type, Fuel </aggregate>
Других решений пока нет …