/** * Preprocesses a SQL statement before query * @return string */ private function _queryPreproc($sql_stmt) { if (false !== strpos($sql_stmt, 'RANDOM()')) { // replace RANDOM $sql_stmt = str_replace('RANDOM()', epObj2Sql::sqlRandom($this) . '()', $sql_stmt); // kludge: SELECT DISTINCT does not work with ORDER BY RANDOM() if ($this->db->dbType() == 'Postgres') { $sql_stmt = str_replace('SELECT DISTINCT', 'SELECT', $sql_stmt); } } return $sql_stmt; }
/** * Return the database type defined in {@link epDb} * @return string */ public function dbType() { return $this->db->dbType(); }