IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Oracle10g-SqlDeveloper Vue: regrouper deux attributs


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Par défaut Oracle10g-SqlDeveloper Vue: regrouper deux attributs
    Bonjour tout le monde,

    Voilà je dois faire différentes requêtes sur une base de données appellée "Base de données GEO".

    Dans cette base, j'ai une table :
    Ville(nom,pays,province,population,longitude,latitude);
    ------------------------------------------------------------------
    J'ai aussi un type qui est défini:

    create or replace TYPE GeoCoord AS OBJECT
    (Longitude NUMBER,
    Latitude NUMBER);
    -----------------------------------------------------------------
    Ma requête doit créer une Vue de la manière suivante:

    CReate view Ville_Vu AS SELECT nom, pays, province... FROM Ville;

    Mais les 2 attributs doivent être regrouper pour ne faire qu'un seul de type GeoCOORD.

    Mais comment regrouper les deux attributs et les remplacer par l'objet GeoCoord

    Merci d'avance pour vos réponses.

    A+

  2. #2
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    c'est tout simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    create view ville_vu as select nom, pays, population, GeoCoord(longitude, latitude) "coord" from ville;
    Test :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    SQL> create or replace TYPE GeoCoord AS OBJECT
      2  (Longitude NUMBER,
      3  Latitude NUMBER);
      4  /
     
    Type crÚÚ.
     
    SQL> create table ville(nom varchar2(50), pays varchar2(50), population number, longitude number, latitude number);
     
    Table crÚÚe.
     
    SQL> create view ville_vu as select nom, pays, population, GeoCoord(longitude, latitude) "coord" from ville;
     
    Vue crÚÚe.
     
     
    SQL> desc ville_vu
     Nom                                       NULL ?   Type
     ----------------------------------------- -------- ---------------------
     NOM                                                VARCHAR2(50)
     PAYS                                               VARCHAR2(50)
     POPULATION                                         NUMBER
     coord                                              GEOCOORD
     
    SQL>
     
    SQL> insert into ville values('Paris', 'France', '2500000', 65.4, 89.4);
     
    1 ligne crÚÚe.
     
    SQL> select * from ville_vu;
     
    NOM
    --------------------------------------------------
    PAYS                                               POPULATION
    -------------------------------------------------- ----------
    coord(LONGITUDE, LATITUDE)
    --------------------------------------------------------------------------------
    Paris
    France                                                2500000
    GEOCOORD(65,4, 89,4)
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  3. #3
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 24
    Par défaut
    Merci Vicenzo.

    Ton message " Responsable Oracle" signifie que tu travailles fréquemment avec Oracle et que pour toi les requêtes SQL c'est qqch de naturel?

    Encore une fois merci.

    P.S: Désolé, mais j'aurais peut-être encore d'autres questions par la suite.

  4. #4
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Le titre "Responsable Oracle" signifie simplement que je suis en charge de la rubrique Oracle de developpez.com et developpez.net...

    J'utilise les technologies Oracle depuis des années donc je les connais bien en tant que développeur.

    Mais je ne suis pas un DBA de "haut vol" non plus.

    Mon truc à moi, ce sont les API Oracle (OCI, PRO*C, etc...), SQL et le PL/SQL.

    Par contre, je n'excelle pas dans les outils plutôt résevés au DBA...
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Regrouper deux requetes pour faire une vue
    Par shaun_the_sheep dans le forum Langage SQL
    Réponses: 2
    Dernier message: 21/04/2009, 17h38
  2. [VB.NET] Regrouper deux projets
    Par neuropathie dans le forum VB.NET
    Réponses: 1
    Dernier message: 15/12/2005, 17h05
  3. Clé primaire à deux attributs, comment incrémenter?
    Par ben53 dans le forum Décisions SGBD
    Réponses: 6
    Dernier message: 28/07/2005, 11h32
  4. [débutant] Comment regrouper deux tables ?
    Par maysa dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 27/10/2004, 18h50
  5. regrouper deux tables
    Par Shabata dans le forum Langage SQL
    Réponses: 4
    Dernier message: 19/05/2003, 15h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo