PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Pilih kolom dari panggilan fungsi di inti sqlalchemy

Anda ingin menggunakan FunctionElement.alias() dan yang ringan column() :

from sqlalchemy import func, select, column

stmt = select([column('col1'), column('col2')]).\
    select_from(func.my_function().alias())

Dokumentasi secara khusus menyebutkan Postgresql sebagai kasus penggunaan untuk konstruksi ini. Di atas menghasilkan:

SELECT col1, col2 
FROM my_function() AS anon_1

Menggunakan parameter _selectable dari column() Anda juga bisa:

In [4]: fn = func.my_function().alias()

In [5]: stmt = select([column('col1', _selectable=fn),
   ...:                column('col2', _selectable=fn)])

In [6]: print(stmt)
SELECT anon_1.col1, anon_1.col2 
FROM my_function() AS anon_1

tapi karena _dapat dipilih dibiarkan tidak berdokumen, ini mungkin bukan ide yang baik.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memberikan kata sandi untuk Createdb PostgreSQL secara non-interaktif?

  2. Ubah tabel normal menjadi tabel cstore_fdw asing

  3. Bagaimana pg_typeof() Bekerja di PostgreSQL

  4. Trade-off dalam Penerapan Hot Standby

  5. Postgres Baris Berikutnya/Sebelumnya SQL Query