code: def form_query(self, columns, options={}):
          
          from_cl = 'FROM'
  
          direct = options.get('direct', self.direct)
          if direct:
              if columns != '*':
                  raise ProgrammingError("Column lists cannot be specified for a direct function call.")
              columns = ''
              from_cl = ''
  
          if len(self.args) >= 1:
              replace = ['%s' for x in range(len(self.args))]
              func = "%s(" % self.query_base + ",".join(replace) + ")"
          else:
              func = "%s()" % self.query_base
  
          return "SELECT %s %s %s" % (columns, from_cl, func)
docs: :param str columns: literal sql string for list of columns
          :param dict options: dict supporting a single key "direct" as in the constructor
          :return: sql string