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 :

pbk de requete sur 2 tables : recherche de minimum


Sujet :

Langage SQL

  1. #21
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 103
    Points : 57
    Points
    57
    Par défaut
    pardon j avias pas vu pour ta correction.. maintenant cette requete marche comme celle de Snipah , mais encore ce souci d'affichage du mauvais maximum. Ce que je voulais dire (C'est peut être totalement faux) c'est que est-ce que on peut comparer un décimal avec un nom décimal, sachant qu'on a du les déclarer ces champs en varchar (je sais c'est pas très logique)

  2. #22
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par juzii Voir le message
    c'est que est-ce que on peut comparer un décimal avec un nom décimal,
    Je pense que oui, au pire en utilisant une fonction de conversion de type.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #23
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 103
    Points : 57
    Points
    57
    Par défaut
    ok... j 'essaye de voir ca, mais les cast et les convert marchent pas.. dsl je suis perdue et il faut que je trouve cette requete pour cette aprem!!

  4. #24
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    861
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 861
    Points : 965
    Points
    965
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    SELECT max(val) AS value
    FROM (
       SELECT cast(KMPValue as float) AS val
       FROM kmp
       UNION
       SELECT cast(KMSValue as float) AS val
       FROM kms
    ) t 
    UNION
    (SELECT value
    FROM (
      SELECT KMPValue AS value
      FROM kmp
      UNION
      SELECT KMSValue AS value
      FROM kms
    ) t 
    ORDER BY value
    LIMIT 2)
    Je garantis rien, j'ai jamais utilisé mysql

  5. #25
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 103
    Points : 57
    Points
    57
    Par défaut
    j'ai déjà essayé cette méthode et j'obtiens l'erreur suivante :

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'float) AS val
    FROM kmp
    UNION
    SELECT cast(KMSValue AS float) AS val
    ' at line 3

  6. #26
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Salut,

    Juste comme ça en passant utilise UNION ALL entre ta requête du max et ta requête des 2 mins, juste histoire d'être sûr d'avoir toujours 3 lignes (on sait jamais )

  7. #27
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 103
    Points : 57
    Points
    57
    Par défaut
    merci.. mais ca change rien au problème!! jca fait un moment que je cherche sur internet et j'ai plus d'idée..

  8. #28
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    D'après la doc MySQL, il semblerait que CAST n'accepte pas le type FLOAT !
    Par contre il existe aussi la fonction FORMAT. Tu peux essayer.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  9. #29
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 103
    Points : 57
    Points
    57
    Par défaut
    je ne comprends pas du tt comment marche cette fonction , tu n'aurais pas un exemple? merci

  10. #30
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    C'est peut être un problème de séparateur, essaie comme ça peut être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    SELECT max(val) AS value
    FROM (
       SELECT cast(REPLACE(KMPValue,',','.') AS DECIMAL(10, 2)) AS val
       FROM kmp
       UNION
       SELECT cast(REPLACE(KMSValue,',','.') AS DECIMAL(10, 2)) AS val
       FROM kms
    ) t 
    UNION ALL
    (SELECT value
    FROM (
      SELECT cast(REPLACE(KMPValue,',','.') AS DECIMAL(10, 2)) AS value
      FROM kmp
      UNION
      SELECT cast(REPLACE(KMSValue,',','.') AS DECIMAL(10, 2)) AS value
      FROM kms
    ) t 
    ORDER BY value
    LIMIT 2)
    Mais j' ai pas testé et je connais pas très bien mysql, et adapte peut être le format de DECIMAL à tes données.

  11. #31
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    103
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 103
    Points : 57
    Points
    57
    Par défaut
    oki ca marche mais pour l'affichage du maximum, il devrait m'afficher 889 et il m'affiche 1000 pourquoi cet arrondi? c'est justemen au niveau des maximum des km qu'il y a le probleme de type : le max kms est de 889 et celui de kmp est de 9.9. Comment résoudre ce problème?

Discussions similaires

  1. besoin d'aide -> requete sur 2 tables avec count()
    Par parksto dans le forum Requêtes
    Réponses: 3
    Dernier message: 20/10/2005, 19h06
  2. requete sur 2 tables mysql
    Par PAYASS59 dans le forum Requêtes
    Réponses: 3
    Dernier message: 19/09/2005, 11h48
  3. Pb requete sur 2 tables
    Par panini182 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 09/08/2005, 17h26
  4. Requete sur deux tables
    Par ReaseT dans le forum ASP
    Réponses: 13
    Dernier message: 07/02/2005, 16h18
  5. [MS-SQL]requete sur 3 tables
    Par pascalT dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 30/04/2003, 11h24

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