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

HyperFileSQL Discussion :

REQUETE SQL HFSQL


Sujet :

HyperFileSQL

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut REQUETE SQL HFSQL
    Bonjour,

    Aujourd'hui, j'ai une petite base Access avec des tables attachées d'une base HFSQL.
    J'ai une requête fonctionnelle que je n'arrive pas à reproduire dans HFSQL ou Etats et Requêtes
    Le problème est le calcul du "solde" de la requête
    J'obtiens ce type de message
    Nom : image.png
Affichages : 100
Taille : 4,7 Ko
    La requête dans Access qui fonctionne
    SELECT COMMANDC.NUMEROC, COMMANDC.CODE, COMMANDC.NOM, COD_PROJET.NOM, Max(COMMANDC.TOTAL) AS MaxDeTOTAL, Sum(FACTURE.TOTAL) AS SommeDeTOTAL1, Max([COMMANDC].[TOTAL])-Sum([FACTURE].[TOTAL]) AS SOLDE
    FROM COD_PROJET INNER JOIN (FACTURE INNER JOIN COMMANDC ON FACTURE.NUM_CMD_SITUATION = COMMANDC.NUMEROC) ON COD_PROJET.IDCOD_PROJET = COMMANDC.IDCOD_PROJET
    GROUP BY COMMANDC.NUMEROC, COMMANDC.CODE, COMMANDC.NOM, COD_PROJET.NOM
    ORDER BY COMMANDC.NUMEROC DESC;


    Pouvez vous m'aidez à réaliser la même chose sous HFSQL ?
    Merci par avance
    Cordialement

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonjour,
    Peut-être qu'en revoyant 2/3 détails ça devrait passer:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    SELECT COMMANDC.NUMEROC, COMMANDC.CODE, COMMANDC.NOM, COD_PROJET.NOM, Max(COMMANDC.TOTAL) AS MaxDeTOTAL, Sum(FACTURE.TOTAL) AS SommeDeTOTAL1, Max(COMMANDC.TOTAL)-Sum(FACTURE.TOTAL) AS SOLDE
    FROM COD_PROJET
    INNER JOIN COMMANDC ON COD_PROJET.IDCOD_PROJET = COMMANDC.IDCOD_PROJET
    INNER JOIN FACTURE ON FACTURE.NUM_CMD_SITUATION = COMMANDC.NUMEROC
    GROUP BY COMMANDC.NUMEROC, COMMANDC.CODE, COMMANDC.NOM, COD_PROJET.NOM
    ORDER BY COMMANDC.NUMEROC DESC;

    J'ai réécrit les jointures, et supprimé les crochets qui ne servent à rien ici.

    Tatayo.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Bonjour Tatayo,
    Merci de t'intéresser à ma demande, malheureusement même erreur avec ta requête
    Nom : image.png
Affichages : 83
Taille : 22,3 Ko

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bonjour,

    Une idée : si tu remplaces la partie Max()-Sum() par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Max(COMMANDC.TOTAL) AS MAXTOTAL, Sum(FACTURE.TOTAL) AS SOLDE
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Bonjour,
    Cela ne me permet pas d'obtenir la différence entre les deux valeurs
    Mon résultat dans Access
    Nom : image.png
Affichages : 77
Taille : 11,1 Ko

  6. #6
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Je ne dis pas le contraire. Je cherche juste la cause de l'erreur.

    [EDIT]Autre test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (Max(COMMANDC.TOTAL)-Sum(FACTURE.TOTAL)) AS SOLDE
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Merci mais la formule ci-dessous me retourne la même erreur
    (Max(COMMANDC.TOTAL)-Sum(FACTURE.TOTAL)) AS SOLDE

  8. #8
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Et si tu supprimes le calcul (et la jointure) ?
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    En enlevant ce calcul de SOLDE, la requête fonctionne.....
    Nom : image.png
Affichages : 78
Taille : 47,3 Ko

  10. #10
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bon, hé bien, je crois que tu as découvert une limite du SQL de Hyperfile...

    Si dans le group by, tu ajoutes les alias, ça met également une erreur ?
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Je ne suis pas un "PRO", que dois je rajouter dans le Group By ?

  12. #12
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bonjour,

    Ajouter SommeDeTOTAL1 et SOLDE dans le GROUP BY

    PS : je n'y crois pas trop.
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  13. #13
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Question : tu es en quelle version de HF ?
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Ca ne fonctionne pas.....
    Version 28 de HFSQL
    Je crois que je vais rester avec ma petite base Access et mon lien ODBC vers HFSQL, c'est quand même dommage

  15. #15
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Une solution (à vérifier quand même) serait de créer une vue basée sur cette requête sans la soustraction, et de lancer une requête sur cette vue.

    En toute logique tu devrais pouvoir faire la soustraction dans la requête, puisque les agrégats seront vus comme de "simple" colonnes.

    Tatayo

  16. #16
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Cette idée est effectivement pertinente mais je ne sais pas comment faire cela dans HFSQL....

  17. #17
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Honnêtement moi non plus, vu que je n'utilise pas HFSQL (et malheureusement je n'utilise plus Windev, politique de la boîte...).
    Mais c'est très bien expliqué dans l'aide en ligne.

    Tatayo.

  18. #18
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Citation Envoyé par tatayo Voir le message
    Une solution (à vérifier quand même) serait de créer une vue basée sur cette requête sans la soustraction, et de lancer une requête sur cette vue.

    En toute logique tu devrais pouvoir faire la soustraction dans la requête, puisque les agrégats seront vus comme de "simple" colonnes.

    Tatayo
    C'est marrant que tu parles de ça car je pensais au WITH que j'utilise en postgeSQL mais que je sais ne pas exister en HF. Ces vues seraient leur "remplacement".

    @tatayo : dsl pour toi de ne plus pouvoir utiliser Windev.
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  19. #19
    Futur Membre du Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Avril 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2011
    Messages : 13
    Points : 6
    Points
    6
    Par défaut
    Mercy Tatayo et Frenchsting d'avoir consacré du temps à ma demande.
    Je vais rester avec ma base Access qui fait le job
    Merci encore

  20. #20
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Ok

    Pense à passer ta discussion en résolu
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Passer des requetes SQl aux fonctions HFSQL
    Par bluescaster dans le forum WinDev
    Réponses: 6
    Dernier message: 05/08/2018, 10h30
  2. Problème Requete SQL et QuickReport
    Par arnaud_verlaine dans le forum C++Builder
    Réponses: 7
    Dernier message: 07/01/2004, 09h31
  3. requete sql
    Par autumn319 dans le forum ASP
    Réponses: 22
    Dernier message: 10/09/2003, 16h46
  4. Paramètre requete SQL (ADOQuery)
    Par GaL dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/07/2002, 11h24
  5. Resultat requete SQL
    Par PierDIDI dans le forum Bases de données
    Réponses: 2
    Dernier message: 23/07/2002, 13h43

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