2015-03-12 1 views
0

Я выполняю запрос агрегации 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».

ответ

1

Вы можете сделать псевдоним, как вы делаете в SQL с помощью «как» строительство:

<aggregate>SUM(Count) as sum_c, Type, Fuel GROUP BY Type, Fuel </aggregate>