it-swarm.com.de

Wie erhalte ich eine berechnete Spalte mit db_select?

Ich benötige Summe (Punkte)? Hilfe zum Hinzufügen des unten angegebenen Beispielcodes?

$query = db_select('digitaliq_question_points','n')
  ->fields('n',array('points'))
  ->condition("node_id", $node->nid, '=')
  ->condition('n.fld_group', $fields, 'IN');

$points = $query->execute()->fetchAll();
7
Kiran Kumar

Sie können die Methode addExpression() verwenden:

$query = db_select('digitaliq_question_points','n')
  ->fields('n',array('points'))
  ->condition("node_id", $node->nid, '=') 
  ->condition('n.fld_group', $fields, 'IN');

$alias = $query->addExpression('SUM(points)', 'sum_of_points');

$points = $query->execute()->fetchAll();

Natürlich muss sich dies je nach Rückgabewert/Gruppierungsanforderungen möglicherweise geringfügig ändern, aber das ist die Methode, nach der Sie suchen.

9
Clive