/**
  * Returns a series of strings concatinated
  *
  * concat() accepts an arbitrary number of parameters. Each parameter
  * must contain an expression or an array with expressions.
  *
  * @throws ezcQueryVariableException if no parameters are provided
  * @param string|array(string) $... strings that will be concatinated.
  * @return string
  */
 public function concat()
 {
     $args = func_get_args();
     $cols = ezcQuery::arrayFlatten($args);
     if (count($cols) < 1) {
         throw new ezcQueryVariableParameterException('concat', count($args), 1);
     }
     $cols = $this->getIdentifiers($cols);
     return join(' || ', $cols);
 }