Псевдоним для полей запроса, содержащих формулы в ClusterPount Aggregate Requests

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".

Теги:
database
clusterpoint

1 ответ

1
Лучший ответ

Вы можете сделать псевдоним, как в SQL, используя конструкцию "as":

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню