Example #1
0
 /**
  * Build the select object
  *
  * @param array $fields
  *
  * @return null|SugarQuery_Builder_Select
  */
 public function select($fields = array())
 {
     if (!is_array($fields)) {
         $fields = func_get_args();
     }
     if (!is_object($this->select)) {
         $this->select = new SugarQuery_Builder_Select($this, array());
     }
     $this->select->field($fields);
     return $this->select;
 }
Example #2
0
 /**
  * Create a select statement
  *
  * @param SugarQuery_Builder_Select $selectObj
  *
  * @return string
  */
 protected function compileSelect(SugarQuery_Builder_Select $selectObj)
 {
     $return = array();
     $addedFields = array();
     if ($selectObj->getCountQuery() === true) {
         $return['count(0) AS record_count'] = 'count(0) AS record_count';
     }
     foreach ($selectObj->select as $field) {
         if ($field->isNonDb()) {
             continue;
         }
         $compiledField = $this->compileField($field);
         $return[$compiledField] = $compiledField;
         if ($selectObj->getCountQuery() === true) {
             $this->sugar_query->groupBy("{$field->table}.{$field->field}");
         }
     }
     return implode(", ", $return);
 }