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 :

[MySQL 5.0] Pb de SGBD et de Requete SQL clause GROUP BY


Sujet :

Langage SQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut [MySQL 5.0] Pb de SGBD et de Requete SQL clause GROUP BY
    Bonjour à tous,

    Je suis en train de mettre au point une interface Graphique pour présenter les résultats des compétitions fédérales de Parachutisme.

    J'ai quelques soucis de mise au point dans la présentation des résultats et j'espère que vous pourrez m'aider. Voici mon Pb, je vais essayer de l'expliquer du mieux possible.

    En fait je n'arive pas à trouver la requête qui me permette ensuite de lancer la routine php de création du tableau.

    1- Pour pouvoir enregistrer et présenter les performances des équipes ainsi que les résultats de chaque équipier, j'inscrit dans la table PAE les résultats pour chaque coéquipier. L'ID de chaque équipier étant la clef unique.

    2- Pour trier et présenter le résultat par équipe en fonction du CLT j'utilise la requête SQL suivante (que j'ai simplifié pour la compréhension)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT `equipe`,SUM(`total`) AS `total_equipe`, SUM(`s11`) AS`departage` 
     
    FROM `PAE_NANCY_2006` 
     
    WHERE 1 
     
    AND `s10` IS NOT NULL 
     
    AND `equipe` NOT LIKE 'INDIVIDUEL%' 
     
    GROUP BY `equipe`
     
    ORDER BY `total_equipe`,`departage`
    Je fais donc une sélection des équipes finalistes ( dont le saut 10 est non NULL) et qui ont un nom ne commençant pas par INDIVIDUEL.

    Je veux présenter le tableau GROUPER par équipe et TRIER en fonction du total_equipe (calculé avec SUM()), puis en cas d'égalité par le saut de DEPARTAGE (calculé avec SUM() , si celui ci a été rempli).


    3- Le problème viens que à priori la condition GROUP BY ne supporte pas plusieurs tri succecifs (je l'ai lu sur dans les pages du site) dans la condition ORDER BY. Le résultat est, que dans le cas précis de NANCY c'est ARMEE de L'AIR qui se voit placé devant ETAP, alors que ce devrait être le contraire.

    Le résultat devrait être:

    Clt - Equipe - Total - Départage

    - PC VANNES 0.58 NULL
    - TARBES BIGORRE 2 0.65 NULL
    - STRASBOURG 0.86 NULL
    - ETAP 0.88 0.02
    - ARMEE AIR 0.88 0.03
    - CP NICE 0.98 NULL


    Le résultat est en réalité:
    Clt - Equipe - Total - Départage

    - PC VANNES 0.58 NULL
    - TARBES BIGORRE 2 0.65 NULL
    - STRASBOURG 0.86 NULL
    - ARMEE AIR 0.88 0.03
    - ETAP 0.88 0.02

    - CP NICE 0.98 NULL


    et si je classe uniquement avec le départage

    Le résultat présenté devient:

    Clt - Equipe - Total - Départage

    - PC VANNES 0.58 NULL
    - TARBES BIGORRE 2 0.65 NULL
    - STRASBOURG 0.86 NULL
    - CP NICE 0.98 NULL
    - ETAP 0.88 0.02
    - ARMEE AIR 0.88 0.03


    4- En trichant, et en rajoutant 1cm au total de BLOUVAC (0.30 au lieu de 0.29), la présentantion est correct, mais ce n'est pas la solution, le résultat est faussé, l'armée de l'air a un total de 0.89.

    5- Ma demande est donc, par quel moyen puis faire en sorte de présenter le bon classement a l'écran. Je n'arrive pas a trouvé une solution a mon problème. Une telle requête est-elle possible?

    Merci d'avance pour votre aide

    PS: ci dessous la structure et les données de la TABLE PAE NANCY 2006, uniquement pour les 6 premières équipes



    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    -- phpMyAdmin SQL Dump
     
    -- version 2.6.3-pl1
     
    -- <a href="http://www.phpmyadmin.net" target="_blank">http://www.phpmyadmin.net</a>
     
    -- Généré le : Dimanche 13 Août 2006 à 11:21
     
    -- Version du serveur: 5.0.23
     
    -- Version de PHP: 4.4.2
     
    -- 
     
    -- 
     
    -- --------------------------------------------------------
    -- 
    -- Structure de la table `PAE_NANCY_2006`
    -- 
     
    DROP TABLE IF EXISTS `PAE_NANCY_2006`;
     
    CREATE TABLE IF NOT EXISTS `PAE_NANCY_2006` (
     
      `id_epreuve` int(3) NOT NULL auto_increment,
     
      `equipe` varchar(40) collate latin1_general_ci default NULL,
     
      `num_licence` varchar(10) collate latin1_general_ci NOT NULL default '0',
     
      `nom` varchar(30) collate latin1_general_ci NOT NULL default '',
     
      `sexe` varchar(1) collate latin1_general_ci NOT NULL default 'H',
     
      `categorie` varchar(10) collate latin1_general_ci NOT NULL default 'Senior',
     
      `s1` varchar(5) collate latin1_general_ci default NULL,
     
      `s2` varchar(5) collate latin1_general_ci default NULL,
     
      `s3` varchar(5) collate latin1_general_ci default NULL,
     
      `s4` varchar(5) collate latin1_general_ci default NULL,
     
      `s5` varchar(5) collate latin1_general_ci default NULL,
     
      `s6` varchar(5) collate latin1_general_ci default NULL,
     
      `s7` varchar(5) collate latin1_general_ci default NULL,
     
      `s8` varchar(5) collate latin1_general_ci default NULL,
     
      `s9` varchar(5) collate latin1_general_ci default NULL,
     
      `s10` varchar(5) collate latin1_general_ci default NULL,
     
      `s11` varchar(5) collate latin1_general_ci default NULL,
     
      `total` float(3,2) default NULL,
     
      `nb0` int(1) default NULL,
     
      `nb1` int(1) default NULL,
     
      `nb2` int(1) default NULL,
     
      `clt` int(2) default NULL,
     
      `clt_jeune` int(2) default NULL,
     
      `clt_dame` int(2) default NULL,
     
      PRIMARY KEY  (`nom`),
     
      KEY `id_epreuve` (`id_epreuve`)
     
    ) ENGINE=MyISAM AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci COMMENT='table servant au skokage des resultats' AUTO_INCREMENT=101 ;
     
     
     
    -- 
     
    -- Contenu de la table `PAE_NANCY_2006` uniquement les 6 équipes finalistes
     
    -- 
     
     
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (17, 'STRASBOURG', '00000042', 'BAAL Jacques', 'H', 'Senior', '0.00', '0.01', '0.01', '0.02', '0.03', '0.01', '0.02', '0.00', '0.04', '0.02', NULL, 0.16, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (19, 'STRASBOURG', '00000043', 'KILFIGER Marc', 'H', 'Vétéran', '0.01', '0.04', '0.03', '0.02', '0.01', '0.03', '0.01', '0.02', '0.06', '0.02', NULL, 0.25, 0, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (20, 'STRASBOURG', '00000014', 'CHAMBON Lionel', 'H', 'Vétéran', '0.02', '0.01', '0.00', '0.02', '0.06', '0.00', '0.01', '0.03', '0.01', '0.02', NULL, 0.18, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (45, 'PC VANNES', '00000032', 'HARDOUIN Olivier', 'H', 'Senior', '0.01', '0.02', '0.00', '0.03', '0.00', '0.00', '0.03', '0.00', '0.00', '0.01', NULL, 0.10, 5, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (46, 'PC VANNES', '00000034', 'HARDOUIN Jean-Noël', 'H', 'Senior', '0.01', '0.02', '0.02', '0.00', '0.00', '0.01', '0.00', '0.03', '0.00', '0.01', NULL, 0.10, 4, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (47, 'PC VANNES', '00000015', 'VANHOVE Valérie', 'F', 'Vétéran', '0.00', '0.03', '0.01', '0.01', '0.03', '0.01', '0.00', '0.03', '0.01', '0.00', NULL, 0.13, 3, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (48, 'PC VANNES', '00000033', 'LAUTARD Bruno', 'H', 'Vétéran', '0.00', '0.16', '0.01', '0.00', '0.05', '0.00', '0.01', '0.02', '0.00', '0.00', NULL, 0.25, 5, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (49, 'C.P.NICE', '00000049', 'COLTAT Eric', 'H', 'Vétéran', '0.00', '0.16', '0.00', '0.02', '0.03', '0.02', '0.02', '0.07', '0.02', '0.01', NULL, 0.35, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (50, 'C.P.NICE', '00000028', 'LAFFAILLE Raymond', 'H', 'Vétéran', '0.02', '0.02', '0.01', '0.00', '0.03', '0.00', '0.02', '0.02', '0.02', '0.02', NULL, 0.16, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (51, 'C.P.NICE', '00000030', 'BUENO Ange', 'H', 'Senior', '0.01', '0.04', '0.16', '0.01', '0.00', '0.02', '0.02', '0.02', '0.01', '0.03', NULL, 0.32, 1, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (52, 'C.P.NICE', '00000052', 'BRUNEAU Albert', 'H', 'Vétéran', '0.00', '0.00', '0.01', '0.04', '0.01', '0.02', '0.03', '0.01', '0.01', '0.02', NULL, 0.15, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (58, 'TARBES BIGORRE 2', '0000006', 'GHRISS Pascal', 'H', 'Vétéran', '0.02', '0.01', '0.00', '0.01', '0.00', '0.01', '0.01', '0.03', '0.01', '0.00', NULL, 0.10, 3, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (59, 'TARBES BIGORRE 2', '000000120', 'JOLIVET Yannick', 'H', 'Senior', '0.01', '0.02', '0.04', '0.01', '0.00', '0.07', '0.01', '0.01', '0.00', '0.01', NULL, 0.18, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (60, 'TARBES BIGORRE 2', '00000036', 'BARRIOT François', 'H', 'Senior', '0.03', '0.01', '0.01', '0.03', '0.05', '0.02', '0.01', '0.03', '0.03', '0.02', NULL, 0.24, 0, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (61, 'TARBES BIGORRE 2', '00000022', 'ROTH David', 'H', 'Senior', '0.01', '0.01', '0.01', '0.01', '0.00', '0.00', '0.02', '0.02', '0.03', '0.02', NULL, 0.13, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (63, 'ETAP', '00000019', 'GEHIN Stéphane', 'H', 'Senior', '0.00', '0.00', '0.00', '0.01', '0.01', '0.01', '0.00', '0.01', '0.06', '0.01', '0.01', 0.11, 4, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (64, 'ETAP', '000000155', 'BILLON Johann', 'H', 'Senior', '0.01', '0.02', '0.16', '0.01', '0.06', '0.01', '0.00', '0.00', '0.03', '0.01', '0.01', 0.31, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (65, 'ETAP', '000000104', 'MARTINEZ David', 'H', 'Senior', '0.01', '0.01', '0.03', '0.00', '0.00', '0.01', '0.01', '0.02', '0.04', '0.02', '0.00', 0.15, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (85, 'STRASBOURG', '00000092', 'RAPP Cyrille', 'H', 'Senior', '0.01', '0.02', '0.03', '0.03', '0.07', '0.03', '0.02', '0.01', '0.04', '0.01', NULL, 0.27, 0, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (86, 'ETAP', '000000229', 'DANJOU Christophe', 'H', 'Senior', '0.04', '0.08', '0.02', '0.00', '0.03', '0.04', '0.04', '0.02', '0.01', '0.03', '0.00', 0.31, 1, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (97, 'ARMEE AIR', '0000002', 'LUBIN Loïc', 'H', 'Senior', '0.02', '0.02', '0.00', '0.02', '0.04', '0.01', '0.00', '0.01', '0.00', '0.03', '0.01', 0.15, 3, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (98, 'ARMEE AIR', '00000091', 'BALAUD Rémy', 'H', 'Senior', '0.01', '0.04', '0.05', '0.10', '0.02', '0.00', '0.02', '0.01', '0.00', '0.03', '0.00', 0.28, 2, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (99, 'ARMEE AIR', '0000004', 'CHERRIER Franck', 'H', 'Senior', '0.00', '0.01', '0.02', '0.06', '0.01', '0.02', '0.01', '0.01', '0.01', '0.01', '0.02', 0.16, 1, NULL, NULL, NULL, NULL, NULL);
     
    INSERT INTO `PAE_NANCY_2006` (`id_epreuve`, `equipe`, `num_licence`, `nom`, `sexe`, `categorie`, `s1`, `s2`, `s3`, `s4`, `s5`, `s6`, `s7`, `s8`, `s9`, `s10`, `s11`, `total`, `nb0`, `nb1`, `nb2`, `clt`, `clt_jeune`, `clt_dame`) VALUES (100, 'ARMEE AIR', '00000045', 'BLOUVAC Jean-François', 'H', 'Senior', '0.01', '0.01', '0.03', '0.04', '0.13', '0.00', '0.03', '0.00', '0.02', '0.02', '0.00', 0.29, 2, NULL, NULL, NULL, NULL, NULL);

  2. #2
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    Bonjour,

    C'est probablement du à un excès de précision sur ta colonne total, essaies comme ça pour voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SUM(ROUND(total,2)) AS total_equipe

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci du tuyau. Vu comme ça c'est simple et....ça fonctionne. Du moins ça à l'air de faire le tri comme je le souhaite.
    Dans ton infini bonté, pourrais-tu étayer la réponse pour parfaire mes connaisances et celles des autres lecteurs en la matière. Je ne connaissais pas cette instruction ROUND.

    En ts cas merci pour ta réponse.

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Après renseignement si j'ai bien compris ROUND(x, y) renvoit l'arrondi de x à la valeur de rang y.
    Pour cette table cela fonctionne effectivement correctement, mais j'ai d'autres compétitions où cela ne donne pas le résultat escompter. J'ai vraiment besoin de départager les ex-eaquo avec la valeur du saut n°11 qui sert de départage.

    Ceci dit j'arrive, avec un script php à répondre (en partie) à mon besoin mais ça fait plutôt usine à gaz (pour l'instant). Je voudrais donc trouver la bonne requête pour l'exploiter avec un script tout simple.

  5. #5
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    Re,

    A mon classement des calamités du SQL je place ex-aequo les champs de type date et de type float. ( genre 0 est <> de 0 )
    Si faire 1 round ne résoud pas ton pb à 100 %, tu peux aussi essayer de remplacer ton : 'total' FLOAT(3,2) par : 'total' NUMERIC(3,2)

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Je viens d'essayer en changeant la structure du champ 'total' dans les tables où je n'arrivait pas à faire le tri. Ma base de donnée est hébergée chez Free et il n'existe pas de NUMERIC mais il existe DECIMAL.

    A priori cela fonctionne et j'espère que ça ne necessitera pas dautre changement dans mes scripts d'exploitations.

    Je te remercie pour ton aide, et j'aimerai bien que tu m'expliques pourquoi ce point était bloquant dans ma requête .

    A bientôt, peut être

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

Discussions similaires

  1. [MySQL]pb de récupération de dates dans une requête SQL
    Par MisterGé dans le forum Langage SQL
    Réponses: 2
    Dernier message: 30/07/2007, 13h51
  2. [sgbd] lancement de requetes sql
    Par Premium dans le forum SGBD
    Réponses: 3
    Dernier message: 11/11/2006, 16h12
  3. [SGBD] Problème de requête MySQL
    Par zakuza dans le forum Requêtes
    Réponses: 7
    Dernier message: 17/05/2006, 14h20
  4. [MySQL 4.1] probleme d'accents sur une requete SQL
    Par tatayoyo dans le forum Langage SQL
    Réponses: 4
    Dernier message: 10/11/2005, 16h06
  5. [SGBD] requête sql en php pour mysql
    Par Thierry8 dans le forum Requêtes
    Réponses: 1
    Dernier message: 20/09/2005, 22h31

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