Précédent   Forum des professionnels en informatique > Bases de données > Firebird > SQL
SQL Forum d'entraide sur le SQL pour Firebird
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/02/2007, 12h29   #1
Membre expérimenté
 
Inscription : mars 2002
Messages : 711
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 711
Points : 599
Points : 599
Par défaut Left Outer Join

Bonjour,

j'ai une requête sur plusieurs tables qui fonctionne bien mais lorsque je mets des left outer join pour gérer les nulls : elle est excessivement longue. Avez vous une solution pour ce problème ou un indice ?

Merci
VLDG est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2007, 13h43   #2
Nouveau Membre du Club
 
Inscription : décembre 2002
Messages : 109
Détails du profil
Informations forums :
Inscription : décembre 2002
Messages : 109
Points : 39
Points : 39
Envoyer un message via ICQ à ludo00002
Il faut remplacer les nulls par une valeur (0 par exemple) afin d'éviter d'avoir à utiliser left outer join dans la requête.
ludo00002 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2007, 13h50   #3
Membre expérimenté
 
Inscription : mars 2002
Messages : 711
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 711
Points : 599
Points : 599
Citation:
Envoyé par ludo00002
Il faut remplacer les nulls par une valeur (0 par exemple) éviter d'avoir à utiliser left outer join dans la requête.
oui, j'y ai déja pensé.
Mais ce phénomène se produit seulement avec Firebird ou c'est général avec toutes les bases de données ?
VLDG est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2007, 09h52   #4
Nouveau Membre du Club
 
Inscription : décembre 2002
Messages : 109
Détails du profil
Informations forums :
Inscription : décembre 2002
Messages : 109
Points : 39
Points : 39
Envoyer un message via ICQ à ludo00002
J'utilisais Access avant et le temps d'exécution était plus long qu'une requête normale. Je ne sais pas pour les autres SGBD.
ludo00002 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2007, 07h28   #5
Membre éprouvé
 
Avatar de Mindiell
 
Inscription : juin 2006
Messages : 728
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juin 2006
Messages : 728
Points : 451
Points : 451
[troll]Access n'étant pas un SGBD...[/troll]
Toutes les bases prendront plus de temps, puique chaque ligne trouvée sera toujours ajoutée, même s'il n'y a pas de lien entre tes tables.

Par contre, je ne vois pas pourquoi remplacer NULL accélèrerait le traitement.

La différence de vitesse est grande ? Si oui, tu as peut-être un souci dans ta requête.
__________________
Mindiell
"Souvent, femme barrit" - Elephant man
Mindiell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2007, 17h05   #6
Nouveau Membre du Club
 
Inscription : décembre 2002
Messages : 109
Détails du profil
Informations forums :
Inscription : décembre 2002
Messages : 109
Points : 39
Points : 39
Envoyer un message via ICQ à ludo00002
Vérifie que les index soient bien défini : c'est souvent le problème lorsque les requêtes sont trop longues.
ludo00002 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h05.


 
 
 
 
Partenaires

Hébergement Web