[SQL/PostgreSQL] RENAME COLUM

RENAME COLUM [SQL/PostgreSQL] - SQL/NoSQL - Programmation

Marsh Posté le 27-02-2014 à 16:24:34    

Bonjour,
 
J'ai 2 tables : Canton et Attributs_complémentaires
 
canton :
id_canton     |     nom_canton    
       30         |        ARCACHON
 
attributs_complémentaires :
id_attr_compl     |     nom_table     |     nom_attribut     |     valeur     |     id_donnee_a_modifier
          1              |       canton         |        chef_lieu         |      Gujan      |            30
 
Je souhaite crée une vue avec la structure suivante :
 
id_canton     |     nom_canton     |     chef_lieu
       30         |      ARCACHON        |      Gujan
 
Il faut récupérer le nom_attribut (chef-lieu) de la table attributs complémentaires et créer une colonne dans la vue avec ce nom d'attribut (chef-lieu).
 
Actuellement j'ai pensé à cette solution mais j'ai une erreur de syntaxe après le TO du RENAME COLUMN:

Code :
  1. CREATE OR REPLACE VIEW canton_vue AS
  2. SELECT
  3.  
  4.   canton.id_canton,
  5.   canton.nom_canton,
  6.   attributs_complementaires.valeur, 
  7.  
  8. FROM
  9.   canton,
  10.   attributs_complementaires
  11. WHERE
  12.   canton.id_canton = attributs_complementaires.id_donnee_a_modifier;
  13. ALTER TABLE canton_vue RENAME COLUMN valeur TO
  14.  (SELECT nom_attribut
  15.  FROM attributs_complementaires
  16.  WHERE canton.id_canton = attributs_complementaires.id_donnee_a_modifier);


 
Merci d'avance.
 
A+

Reply

Marsh Posté le 27-02-2014 à 16:24:34   

Reply

Marsh Posté le 27-02-2014 à 16:30:00    

RENAME COLUMN sert si tu as une colonne chef_lieux que tu voudrai appeler autrement ( genre grosse_ville )  
 
Dans ton cas, il te suffit de faire une jointure dans ta requête de création de vue


---------------

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed