{Oracle} Création d'une vue sur plusieurs tables
Résolu/Fermé
krimo89
Messages postés
5
Date d'inscription
mercredi 24 février 2010
Statut
Membre
Dernière intervention
24 février 2010
-
24 févr. 2010 à 11:44
krimo89 Messages postés 5 Date d'inscription mercredi 24 février 2010 Statut Membre Dernière intervention 24 février 2010 - 24 févr. 2010 à 17:00
krimo89 Messages postés 5 Date d'inscription mercredi 24 février 2010 Statut Membre Dernière intervention 24 février 2010 - 24 févr. 2010 à 17:00
A voir également:
- Create or replace view oracle
- Voir sa maison sur google street view - Guide
- Wifi info view - Télécharger - Divers Réseau & Wi-Fi
- Google street view gratuit - Télécharger - Transports & Cartes
- Irfan view - Télécharger - Visionnage & Diaporama
- View recovery logs - Guide
6 réponses
SuzukMan
Messages postés
37
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
26 mai 2010
1
24 févr. 2010 à 14:40
24 févr. 2010 à 14:40
Il faut que face une jointure externe pour avoir les film qui n'ont pas de commentaire cela donne donc :
CREATE OR REPLACE FORCE VIEW "INFORMATION_FILM" AS
SELECT AM_FILM.TITREF, AM_FILM.DATESORTIEF, AM_FILM.SYNOPSYSF, --ce qui concerne les films
AM_CRITIQUE.commentaireC--ce qui concerne les critiques
FROM AM_FILM F LEFT JOIN AM_CRITIQUE C ON F .ID_FILM = C.ID_FILM
La sa devrait être mieux !
Tu me redis !
CREATE OR REPLACE FORCE VIEW "INFORMATION_FILM" AS
SELECT AM_FILM.TITREF, AM_FILM.DATESORTIEF, AM_FILM.SYNOPSYSF, --ce qui concerne les films
AM_CRITIQUE.commentaireC--ce qui concerne les critiques
FROM AM_FILM F LEFT JOIN AM_CRITIQUE C ON F .ID_FILM = C.ID_FILM
La sa devrait être mieux !
Tu me redis !
krimo89
Messages postés
5
Date d'inscription
mercredi 24 février 2010
Statut
Membre
Dernière intervention
24 février 2010
24 févr. 2010 à 14:40
24 févr. 2010 à 14:40
Merci, ça fonctionne... je ne savais pas que l'on pouvais utiliser cela... ça fesait un bon moment que je cherchais...
Sinon, je voulais aussi savoir si c'est possible d'utiliser la clause 'LEFT JOIN ON' sur plusieurs autre table. Je m'explique, dans la vue que je veux créer, je veux y ajouter aussi les récompenses (meilleurs réalisation par exemple). Or, un film peut recevoir plusieurs récompenses. J'ai pour cela créer un table association qui contient la référence vers un film et une référence vers une récompense. Est-ce possible??
Sinon, je voulais aussi savoir si c'est possible d'utiliser la clause 'LEFT JOIN ON' sur plusieurs autre table. Je m'explique, dans la vue que je veux créer, je veux y ajouter aussi les récompenses (meilleurs réalisation par exemple). Or, un film peut recevoir plusieurs récompenses. J'ai pour cela créer un table association qui contient la référence vers un film et une référence vers une récompense. Est-ce possible??
SuzukMan
Messages postés
37
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
26 mai 2010
1
24 févr. 2010 à 15:43
24 févr. 2010 à 15:43
Oui une jointure externe peut être fait sur plusieurs table aucun problème tu peux regarder la doc sur internet tu aura la syntaxe et des exemples !
krimo89
Messages postés
5
Date d'inscription
mercredi 24 février 2010
Statut
Membre
Dernière intervention
24 février 2010
24 févr. 2010 à 15:53
24 févr. 2010 à 15:53
D'abord merci de prendre du temps pour me répondre...
j'ai trouvé sur le net des liens expliquants le left join sur plusieurs tables...
Mais là ou je bloque est celui que je t'ai postuler précédemment c'est à dire dans le cas où j'ai une table association. Je précise: je possède ma table FILM qui a pour identifiant ID_FILM et une table RECOMPENSE qui possède comme identifiant ID_recompense. Pour faire une relation entre ces deux tables, je possède une table association qui permet de faire référencé un film et sa (ses récompenses)..; Si tu peux me donner un exemple, cela m'aiderai à comprendre ^^
j'ai trouvé sur le net des liens expliquants le left join sur plusieurs tables...
Mais là ou je bloque est celui que je t'ai postuler précédemment c'est à dire dans le cas où j'ai une table association. Je précise: je possède ma table FILM qui a pour identifiant ID_FILM et une table RECOMPENSE qui possède comme identifiant ID_recompense. Pour faire une relation entre ces deux tables, je possède une table association qui permet de faire référencé un film et sa (ses récompenses)..; Si tu peux me donner un exemple, cela m'aiderai à comprendre ^^
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
krimo89
Messages postés
5
Date d'inscription
mercredi 24 février 2010
Statut
Membre
Dernière intervention
24 février 2010
24 févr. 2010 à 16:11
24 févr. 2010 à 16:11
J'ai essayé de faire quelquechose et voilà ce que ça donne... mais cela ne fontionne toujours pas
CREATE OR REPLACE FORCE VIEW "MON_TEST" ("TITREF", "TYPER") AS
SELECT F.TITREF, R.TYPER
from AM_FILM F natural join AM_RECEVOIR_FILM G left join AM_RECOMPENSE R on G.id_recopense=R.id_recompense
/
CREATE OR REPLACE FORCE VIEW "MON_TEST" ("TITREF", "TYPER") AS
SELECT F.TITREF, R.TYPER
from AM_FILM F natural join AM_RECEVOIR_FILM G left join AM_RECOMPENSE R on G.id_recopense=R.id_recompense
/
krimo89
Messages postés
5
Date d'inscription
mercredi 24 février 2010
Statut
Membre
Dernière intervention
24 février 2010
24 févr. 2010 à 17:00
24 févr. 2010 à 17:00
Voilà, j'ai réussi,
je pose le code pour les personnes qui serait succeptible d'étre confronté au même problème
CREATE OR REPLACE FORCE VIEW "MON_TEST" ("TITREF", "TYPER") AS
SELECT F.titreF, nvl(R.TYPER, 'aucune récompense') as prix
from AM_FILM F LEFT JOIN (AM_RECEVOIR_FILM G natural join AM_RECOMPENSE R) on F.id_film=G.id_film
/
je pose le code pour les personnes qui serait succeptible d'étre confronté au même problème
CREATE OR REPLACE FORCE VIEW "MON_TEST" ("TITREF", "TYPER") AS
SELECT F.titreF, nvl(R.TYPER, 'aucune récompense') as prix
from AM_FILM F LEFT JOIN (AM_RECEVOIR_FILM G natural join AM_RECOMPENSE R) on F.id_film=G.id_film
/