public function select()
    {
        self::$instance->reset();
        $this->sql('SELECT ');
        if ($this->oosql_distinct) {
            $this->sql('DISTINCT ');
        }
        $numargs = func_num_args();

        if ($numargs > 0) {

            $arg_list = func_get_args();

            $this->oosql_fields = $arg_list;

            for ($i = 0; $i < $numargs; $i++) {
                if ($i != 0 && $numargs > 1) {
                    $this->sql(',');
                }
                $this->sql($arg_list[$i]);

            }
        } else {
            $this->oosql_fields[] = '*';
            $this->sql($this->oosql_table . '.* ');
        }

        $this->oosql_fromFlag = true;
        $this->oosql_select = $this;
        $this->oosql_where = null;
        return $this;
    }