/** * @param \Doctrine\ORM\Query\SqlWalker $sqlWalker * @return string */ private function getPostgreSql(SqlWalker $sqlWalker) { $query = '(CASE'; for ($i = 1; $i <= count($this->values); $i++) { $query .= ' WHEN (' . $this->field->dispatch($sqlWalker) . ') = ' . $this->values[$i - 1]->dispatch($sqlWalker) . ' THEN ' . $i; } $query .= ' END)'; return $query; }
/** * @param SqlWalker $sqlWalker * @return string */ public function getSql(SqlWalker $sqlWalker) { return 'REPLACE(' . $this->string->dispatch($sqlWalker) . ', ' . $this->from->dispatch($sqlWalker) . ', ' . $this->to->dispatch($sqlWalker) . ')'; }