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 :

Requête calcul sur champs


Sujet :

Langage SQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Requête calcul sur champs
    Bonjour,

    Je débute et j'aurais vraiment besoin que l'on m'aide pour avancer
    Voilà, je dois créer un site où figure un catalogue de produits, avec des prix qui s'adaptent selon la FAMILLE de produits, et selon le MOT DE PASSE rentré par l'utilsateur.

    Dans ma base MySQL, j'ai créé une table "articles" dont les champs sont :
    famille | reference | designation | prix achat


    Je reviendrais poser d'autres questions plus tard afin de n'embrouiller personne lol, mais pour l'instant je cherche à savoir quelle requête je dois taper afin d'appliquer un taux (une "marge") à mon prix d'achat (pour qu'au moins que je commence à comprendre le principe!).

    Le but étant d'afficher les critères suivants :
    famille , reference, designation, prix achat \ 0.85


    vous etes les seuls à pouvoir me filer un coup de main alors merci bcp

  2. #2
    Membre à l'essai
    Inscrit en
    Janvier 2005
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 9
    Points : 11
    Points
    11
    Par défaut [SQL] : Requête calcul sur champs
    En SQL cela donne :
    SELECT at.famille, at.reference, at.designation, round(at.prix / 0.85, 2) prix_achat
    FROM articles at /*at est l'alias donné à la table */


    prix_achat sera le nom de la colonne qui contiendra le résultat de la division prix / 0.85.
    La fonction round(montant, nombre de décimales) permet d'arrondir le montant avec le nombre de décimales demandé

    En espérant que cela peut t'aider...

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Aaaaah
    Aaaaah , ça sert donc à ça les alias !
    j'ai eu beau regardé des doc sur MySQl, je n'avais pas capté que ça pouvait me servir dans mon cas

    Je teste demain matin et je reviens vite sur ce forum pour te donner des nouvelles !

    Merci beaucoup de ton aide et bonne soirée !


    ---------------------------
    Un tikawua et ça repart

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Alias
    Je suis désolé si mes questions vont vous sembler simplistes, mais je n'ai pas réussi à trouver la réponse seul....

    Les alias sont-il a ajouter sous mySQL ou simplement dans la requête.
    Si c'est simplement dans la requête, j'ai essayé ce que tu m'as conseillé, donc ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $result = mysql_query ("SELECT at.famille, at.reference, at.designation, round(at.prix / 0.85, 2) prix2 FROM articles at");
     
         echo $result;
    Ma 2ème colonne est "prix2"
    Et bien entendu, ça ne fonctionne pas....

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Précision
    Je précise que ce qui s'affiche sur ma page est :

    Resource id #6

    Merci !

  6. #6
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut Re: [SQL] : Requête calcul sur champs
    Citation Envoyé par chadec4
    En SQL cela donne :
    SELECT at.famille, at.reference, at.designation, round(at.prix / 0.85, 2) prix_achat
    FROM articles at /*at est l'alias donné à la table */
    "at" ne sert à rien dans cette requête, on met en général des alias sur les noms de table si une table intervient plusieurs fois dans une requête.

    Sinon, la requête SQL est correcte au niveau de la syntaxe.

    Si ça ne fonctionne pas, tu peux également essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT famille, reference, designation, round(prix / 0.85, 2) AS prix_achat
    FROM articles
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT famille, reference, designation, (prix / 0.85) AS prix_achat
    FROM articles
    Citation Envoyé par tikawua
    Resource id #6
    Là, ça n'est pas une erreur SQL, c'est du PHP je pense. Il n'y a pas un message associé à cette erreur ?
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 16
    Points : 6
    Points
    6
    Par défaut [resolu] MERCI !
    Ca marche !

    Effectivement, mon code PHP ne fonctionnait pas, j'ai donc compris qu'on ne pouvait pas demander l'affichage (ECHO) directement après le SELECT, contrairement à ce que j'avais écrit + haut :
    $result = mysql_query ("SELECT fam, ref, des, prix, (prix / 0.85) AS prix2 FROM articles");
    echo $result;
    J'ai donc fait une boucle "while", avec vos nouvelles indications, et maintenant ça marche.
    Je reviendrais sans doute à la charge pour vous poser d'autres questions car mon site est loin d'être fini, et je bloque très souvent...

    En attendant, merci beaucoup pour votre aide !

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

Discussions similaires

  1. [AC-2003] Requête Access sur champ dont les données sont effacées
    Par Florentin dans le forum IHM
    Réponses: 4
    Dernier message: 15/06/2009, 10h19
  2. Problème Requête SELECT sur champ texte
    Par arnaud_verlaine dans le forum WinDev
    Réponses: 5
    Dernier message: 02/10/2007, 21h19
  3. Calcul sur champs
    Par jacqtiti dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/07/2007, 23h13
  4. Réponses: 4
    Dernier message: 15/06/2006, 16h42
  5. Réponses: 5
    Dernier message: 03/11/2005, 16h54

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