Je veux créer la requête suivante avec ZF2:Alias dans ZF2 sélectionner - avec le champ calculé
SELECT (a + b) AS c FROM ta WHERE c > 1;
avec une table ta
contiennent deux champs entiers a
et b
.
Je l'ai essayé jusqu'à présent avec ce code:
$columns = array('c'=>'(a + b)');
$where = 'c > 1';
$tableGateway = $this->getTableGateway('ta');
$sql = $tableGateway->getSql();
$select = $sql->select()->columns($columns);
$select->where($where);
$itemData = $tableGateway->selectWith($select);
Malheureusement, la requête est-rendu:
SELECT `ta`.`a + b` AS `c` FROM `ta` WHERE c > 1;
Toute idée comment y parvenir? J'ai aussi essayé sans les crochets: $columns = array('c'=>'a + b');
qui ne fonctionne pas non plus.
Je l'ai déjà essayé avec $this->getAdapter()->query($sqlQuery, Adapter::QUERY_MODE_EXECUTE);
mais j'ai rencontré un problème de requête sans tampon non résolvable avec ->closeCursor()
.
Merci, qui fonctionne comme un charmeur! – Andreas