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

Tambahkan nama tabel ke setiap kolom dalam hasil yang ditetapkan dalam SQL? (Khusus Postgres)

Saya tahu pertanyaan ini agak lama, tetapi mungkin seseorang akan menemukan jawabannya dan itu akan membantu mereka.

Cara yang tepat untuk melakukan apa yang Anda cari adalah dengan membuat dan menggunakan View. Ya, satu kali akan sedikit membosankan untuk mengetik semua nama kolom baru sebagai alias, tetapi jika ada banyak kolom, inilah trik yang dapat Anda gunakan untuk memanfaatkan metadata PostgreSQL untuk menulis teks tampilan:

select 'CREATE OR REPLACE VIEW people AS SELECT ' || 
(select string_agg(column_name || ' AS person_' || column_name, ', ')
from information_schema.columns
where table_name = 'person'
group by table_name) || 
' FROM person;';

menjalankan ini menghasilkan:

?column?                                                 
------------------------------------------------------------------------------------------------------------- 
CREATE OR REPLACE VIEW people AS SELECT last_name AS person_last_name, first_name AS person_first_name FROM person; 

1 record(s) selected [Fetch MetaData: 0/ms] [Fetch Data: 0/ms]
[Executed: 4/21/12 2:05:21 PM EDT ] [Execution: 9/ms]

Anda kemudian dapat menyalin dan menjalankan hasilnya dan voila:

select * from people;

 person_last_name     person_first_name    
 -------------------  -------------------- 
 Melvoin              Wendy                
 Coleman              Lisa                 

 2 record(s) selected [Fetch MetaData: 1/ms] [Fetch Data: 0/ms] 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Di Spring Boot 2, apakah mungkin membuat JoinTable secara otomatis dengan batasan unik?

  2. ComboBox.ValueMember dan DisplayMember

  3. PgAdmin di Windows 10 dengan Postgres saat diinstal melalui Bash di Ubuntu di Windows

  4. PostgreSQL:format interval sebagai menit

  5. Bagaimana cara melakukan perbandingan kanonik XML dengan PostgreSQL?