PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Добавяне на име на таблица към всяка колона в набор от резултати в SQL? (По-специално Postgres)

Знам, че този въпрос е малко стар, но може би някой ще се натъкне на отговора и той ще му помогне.

Правилният начин да направите това, което търсите, е да създадете и използвате изглед. Да, ще бъде малко досадно еднократно да въвеждате всички тези нови имена на колони като псевдоними, но ако има много колони, ето трик, който можете да използвате, за да използвате метаданните на PostgreSQL, за да напишете текста на изгледа:

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;';

изпълнението на това дава:

?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]

след това можете да копирате и изпълните резултатите и готово:

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. Внедряване на база данни на Postgres в екземпляр на контейнер на azure?

  2. Заявка за най-близкия съсед в PostGIS

  3. postgresql:изпълнява SQL команди с помощта на psql в командния ред

  4. Как да променя стойността на колоната по подразбиране в PostgreSQL?

  5. Деактивирайте обвиването в изхода на Psql