Requete sql

Melooo Messages postés 1476 Statut Membre -  
 Séquelle -
Bonjour,
J'ai une table station (CodeS,nomS, cpS, telmairieS, nbhabS, nbtouristeS, nbskieurS)
et je voudrais avoir le nom des stations dont le nombre de touristes est au moins trois fois plus grand que le nombre d'habitants.
Voici le début de ma requete :
SELECT nomS, SUM (nbtouristeS), SUM (nbhabS)
FROM station
HAVING SUM(nbtouristeS) *3 > SUM(nbhabS)

Je sais que ce n'est pas sa mais j'suis vraiment bloquée pour résoudre cette requête.
Merci de vos réponses
Configuration: Windows Vista
Firefox 3.0.14

3 réponses

  1. moiced59 Messages postés 1161 Statut Membre 60
     
    bonjour

    remplace ton having par un where
    0
  2. du crétin, point te moquer tu ne dois
     
    ...qui plus est, il ne t'est pas demandé les cumuls ! ce sera donc
    select nomS from...
    0
  3. moderno31 Messages postés 900 Statut Membre 92
     
    Hello
    J'ai fait un exemple de mon coté
    Il te faut faire ça
    SELECT sum( `nb chats` ) AS nb_chats, sum( `nb lions` ) AS nb_lions
    FROM `test4`
    HAVING sum( `nb chats` ) >20
    LIMIT 0 , 30
    Concrètement la req va sommer les chats et les lions, on ne prend que le total chat supérieur à 20. Donc si dans ton résultat tu as un total chat dans une ferme (par exemple) inférieur à 20 tu ne le compterait pas.
    Attention, il manque une dimension dans ma requete pour qu'elle soit vraiment parlante.

    Quand tu veux filtrer dans une requete avec sommes par exemple, tu ne peux pas utiliser WHERE à n'importe quelles conditions.
    Filtrer de plus sur des champs agregés, come c'est ton cas, tu dois utiliser Having.
    Le WHERE s'emploierai par exemple pour filtrer un champ non sommé par exemple "nom de ferme"..

    Pk tu veux faire SUM(nbtouristeS) *3 ???
    Décrit moi ce que tu attends de cette requete et j'essaye de t'aider.

    A+
    0
    1. Séquelle
       
      Pk tu veux faire SUM(nbtouristeS) *3 ???
      Décrit moi ce que tu attends de cette requete et j'essaye de t'aider. 
      Just read the question :D
      0