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

Nama tabel dinamis di postgreSQL 9.3

Tolong jangan lakukan ini - cari alternatif terlebih dahulu, dimulai dengan partisi dan pengecualian batasan .

Jika Anda harus menggunakan nama tabel dinamis, lakukan di tingkat aplikasi selama pembuatan kueri.

Jika semuanya gagal, Anda dapat menggunakan prosedur PL/PgSQL seperti:

CREATE OR REPLACE pleasedont(int year) RETURNS TABLE basetable AS $$
BEGIN
    RETURN QUERY EXECUTE format('SELECT col1, col2, col3 FROM %I', 'basetable_'||year);
END;
$$ LANGUAGE plpgsql;

Ini hanya akan berfungsi jika Anda memiliki tabel dasar yang memiliki struktur yang sama dengan sub-tabel. Ini juga sangat sulit untuk dikerjakan ketika Anda mulai menambahkan qualifier (di mana batasan klausa, dll), dan ini mencegah segala jenis caching rencana atau penggunaan pernyataan yang disiapkan secara efektif.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan saat mengimpor CSV ke postgres dengan python dan psycopg2

  2. Menggunakan Slot Replikasi PostgreSQL

  3. SALIN dengan nama file dinamis

  4. postgresql nextval menghasilkan nilai yang ada

  5. Postgresql -bash:psql:perintah tidak ditemukan