code: def copy_to(source, dest, engine_or_conn, **flags):
      
      dialect = postgresql.dialect()
      statement = getattr(source, 'statement', source)
      compiled = statement.compile(dialect=dialect)
      conn, autoclose = raw_connection_from(engine_or_conn)
      cursor = conn.cursor()
      query = cursor.mogrify(compiled.string, compiled.params).decode()
      formatted_flags = '({})'.format(format_flags(flags)) if flags else ''
      copy = 'COPY ({}) TO STDOUT {}'.format(query, formatted_flags)
      cursor.copy_expert(copy, dest)
      if autoclose:
          conn.close()
docs: Export a query or select to a file. For flags, see the PostgreSQL
      documentation at http://www.postgresql.org/docs/9.5/static/sql-copy.html.
  
      Examples: ::
          select = MyTable.select()
          with open('/path/to/file.tsv', 'w') as fp:
              copy_to(select, fp, conn)
  
          query = session.query(MyModel)
          with open('/path/to/file/csv', 'w') as fp:
              copy_to(query, fp, engine, format='csv', null='.')
  
      :param source: SQLAlchemy query or select
      :param dest: Destination file pointer, in write mode
      :param engine_or_conn: SQLAlchemy engine, connection, or raw_connection
      :param **flags: Options passed through to COPY
  
      If an existing connection is passed to `engine_or_conn`, it is the caller's
      responsibility to commit and close.