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

Requêtes et SQL. Discussion :

Requête avec "Tous" et fonction [AC-2019]


Sujet :

Requêtes et SQL.

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Superpat9999
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2003
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 438
    Par défaut Requête avec "Tous" et fonction
    Bonjour,
    J'essaie de passer de mettre "Tous" dans une zone de liste déroulante ainsi qu'une fonction.

    Mon SQL Avec "Tous", sans Rendvaleur(), fonctionne parfaitement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT DISTINCT tblVariables.Modules, tblVariables.NomBase  
    FROM tblVariables UNION SELECT " Tous",0  AS Modules FROM tblVariables
    ORDER BY tblVariables.Modules;
    Mon SQL Sans "Tous", avec RendValeur(), fonctionne parfaitement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT DISTINCT tblVariables.Modules, tblVariables.NomBase
    FROM tblVariables
    WHERE (((tblVariables.NomBase) Like RendValeurBase()))
    ORDER BY tblVariables.Modules;


    Mon SQL 'Avec "Tous" et RendValeur(), ne fait plus le tri.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT DISTINCT tblVariables.Modules, tblVariables.NomBase  
    FROM tblVariables UNION SELECT " Tous",0  AS Modules FROM tblVariables
    WHERE (((tblVariables.NomBase) Like RendValeurBase()))
    ORDER BY tblVariables.Modules;
    Pourriez-vous me donner la bonne syntaxe ?

  2. #2
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    3 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 059
    Par défaut
    Essaie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT DISTINCT Modules, NomBase  
    FROM tblVariables 
    WHERE (((tblVariables.NomBase) Like RendValeurBase()))
    UNION SELECT " Tous", "0"  
    ORDER BY Modules;
    remarques:
    1 dans chaque SELECT de l'UNION les champs doivent être dans le même ordre
    2 Je suppose que NomBase est une chaine, J'ai donc encadré 0 par des "

  3. #3
    Membre éclairé Avatar de Superpat9999
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2003
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 438
    Par défaut
    Merci pour ta réponse,
    Malheureusement, j'obtiens l'erreur "La requête doit être construite à partir d'au moins une table ou une requête source."
    Le lien vers ma base :https://www.developpez.net/forums/d2.../idee-requete/Message no 12

  4. #4
    Expert confirmé

    Homme Profil pro
    consultant développeur
    Inscrit en
    Mai 2005
    Messages
    3 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : consultant développeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 059
    Par défaut
    en effet ceci marchera mieux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT DISTINCT Modules, NomBase  
    FROM tblVariables 
    WHERE (((tblVariables.NomBase) Like RendValeurBase()))
    UNION SELECT " Tous", "0"  FROM tblVariables
    ORDER BY Modules;
    reste que ta fonction RendValeurBase() est une usine à gaz ...

  5. #5
    Membre éclairé Avatar de Superpat9999
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2003
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 438
    Par défaut
    Citation Envoyé par micniv Voir le message
    en effet ceci marchera mieux
    reste que ta fonction RendValeurBase() est une usine à gaz ...
    Merci @micniv, cela fonctionne parfaitement.
    Pour la fonction RendValeurBase(), je la trouve très pratique car, pour moi, elle me semble simple !

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

Discussions similaires

  1. Requête avec condition spécifique pour les fonctions LAG / LEAD
    Par vincent_prod dans le forum Langage SQL
    Réponses: 2
    Dernier message: 06/12/2021, 18h09
  2. Macro-variable avec quote et fonction tranwrd
    Par jlp65 dans le forum Macro
    Réponses: 2
    Dernier message: 09/11/2015, 08h52
  3. Requête avec champ NULL simple quote
    Par tidou95220 dans le forum Requêtes
    Réponses: 2
    Dernier message: 13/07/2012, 14h15

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