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

Langage SQL Discussion :

Une fraction dans une clause WHERE


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 246
    Points : 123
    Points
    123
    Par défaut Une fraction dans une clause WHERE
    Salut à toutes et à tous,

    Quelle surprise de ne pas trouver la solution à une question qui me paraît a priori toute bête ...
    Sans doute que je cherche mal aussi, parce que je ne trouve pas la réponse en utilisant la recherche.

    Soit une BDD sous PostgreSQL
    Soit une vue dans laquelle une colonne contient un pourcentage (1 étant 100%)
    Soit une requête pour sortir tous les éléments de cette vue dont le pourcentage est plus petite que 1/3.
    Cela paraît simple et pourtant je bute.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT "NbrPPParSecteur_SecteurID", "NbrPPParSecteur_PourcentagePPParSecteur"
    FROM "NbrPPParSecteur"
    WHERE "NbrPPParSecteur_PourcentagePPParSecteur" < (1/3)
    Il ne me retourne que les 0.
    Si je met >(1/3) il me retourne tout (y compris 0.25 par exemple) sauf les 0.
    J'ai essayé avec et sans parenthèses.
    Biensur <0.33 fonctionne, mais on s'entend qu'au point de vue ethique ce n'est pas génial.

    Je veux comprennnndddrrrreeeeeeeeeee ...
    SVPPPPPPPPPPP, quelle est mon erreur et comment dois-je faire ?

    Merci de vos z'avis z'avisés,
    Jean-Marc

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 109
    Points : 28 434
    Points
    28 434
    Par défaut
    C'est un problème de type des valeurs utilisées dans le calcul :
    1 / 3 est la division de deux entiers et retourne un entier, soit 0
    1.00 / 3 retournera un NUMERIC avec 2 décimales
    CAST(1 AS FLOAT) / 3 retournera un FLOAT
    A toi de voir maintenant quel doit être le type de la valeur calculée

  3. #3
    Membre expérimenté Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Points : 1 738
    Points
    1 738
    Par défaut
    et avec un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    cast((1/3) as float)
    cela ne fonctionne pas ??

    Bon courage

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 246
    Points : 123
    Points
    123
    Par défaut
    Merci à tous les 2.

    J'avais bien essayé le cast (1/3 as numeric) mais il ne passait pas.
    Suite à vos réponses j'ai fais d'autres essais et le cast (1 as numeric) /3 passe très bien.

    Merci donc à vous deux qui m'avez bien aidé.
    Jean-Marc

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

Discussions similaires

  1. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  2. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  3. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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