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

Oracle Discussion :

Join conditionnel


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2003
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 51
    Par défaut Join conditionnel
    Quelqu'un peut me dire comment je peut faire un join conditionnel dans une requete conditionnel?

    Par exemple, je veux que le lien entre la table A et B soit les 16 derniers char du champs ID de la table A et le champs ID de la table B lorsque ce LENGTH(A.ID) est supérieur 16 sinon A.ID = B.ID

    Merci,

  2. #2
    Membre émérite Avatar de plabrevo
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut
    Le mieux est d'utiliser une "Function Based Index" et d'encapsuler la logique d'appel a la fonction au travers d'une vue, ce qui evitera de cabler en dur la specificite de cette jointure dans toutes les requetes de l'application.

  3. #3
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Par défaut
    Voila bien le genre de modélisation boîteuse dont il faudrait se demander si elle est bien justifiée
    Sinon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    NVL(SUBSTR(a.Id, -16), a.Id) = b.Id
    ou
    SUBSTR(a.Id, LENGTH(a.Id) - 15, 16) = b.Id

Discussions similaires

  1. [MySQL-5.5] DELETE conditionnel (JOIN et sous-requête)
    Par r2mi_ dans le forum Requêtes
    Réponses: 2
    Dernier message: 09/04/2014, 10h58
  2. Pas de JOIN sous Oracle (vraiment dommage...)
    Par Isildur dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/03/2007, 11h28
  3. [XSL] déclaration conditionnelle
    Par Totsira dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 18/08/2003, 05h02
  4. Réponses: 5
    Dernier message: 04/08/2003, 21h50
  5. Export d'une vue avec LEFT JOIN
    Par schnourf dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/05/2003, 13h57

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