Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/01/2011, 22h48   #1
Invité de passage
 
Inscription : juin 2009
Messages : 16
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 16
Points : 4
Points : 4
Par défaut Problème de formulation de requête

Bonjour, je suis en train de développer un site pour parieurs sur le baseball. MA base de donnée est assez simple avec une table seulement et 9 champs.

Je veux créer une requête pour calculer nombres de match consécutifs de défaite ou de victoire pour une equipe donnée.

Les champs à utiliser dans la requête seraient: equipe locale, visteurs, points equipe locale, points visiteurs.

Je ne sais tout simplement pas comment compter une victoire ou une défaite et ensuite changer de ligne calculer le nombre de victoire ou défaire de suite.

Quelqu'un?

Merci
trealais est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 11h01   #2
rsc
Membre émérite
 
Avatar de rsc
 
Homme
Développeur informatique
Inscription : juin 2004
Messages : 697
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 61
Localisation : France, Côte d'Or (Bourgogne)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2004
Messages : 697
Points : 871
Points : 871
Une victoire de l'équipe locale correspond tout simplement à :
Code :
WHERE POINTS_EQUIPE_LOCALE > POINTS_VISITEURS
Pour le reste, une remarque : si tu n'as pas de champ DATE_MATCH ou équivalent, le concept même de matchs consécutifs n'a pas de sens. Et ne me parles pas de l'ordre des lignes dans la table, en SQL ça n'a pas de sens.

Cette condition une fois remplie, ... eh bien j'avoue que je sèche. Comme ça, je dirais : pas possible, mais j'espère qu'un des experts qui fréquentent le forum me contredira
__________________
Roland
rsc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 14h28   #3
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
Bonjour


Comme le dis rsc, tu dois tout d'abord définir un ordre pour les matchs.

Ensuite pour effectuer ta requete, tu auras plusieurs solutions.

Une requete récursive si ton SGBDR les implémente.
Ou bien des jointures externes pour trouver pour chaque match le match suivant qui n'ait pas la même issue (victoire ou défaite), pour pouvoir compter le nombre de matchs entre les deux...

Indique nous ton SGBDR (et sa version), et donnes nous la structure complète de ta table...
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 16h27   #4
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 990
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
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 : 10 990
Points : 18 241
Points : 18 241
Envoyer un message via MSN à CinePhil
Citation:
Envoyé par trealais Voir le message
MA base de donnée est assez simple avec une table seulement et 9 champs.
Ce n'est donc pas une base de données relationnelle.
Un simple tableur ne ferait-il pas l'affaire ?

Citation:
Les champs à utiliser dans la requête seraient: equipe locale, visteurs, points equipe locale, points visiteurs.
Une table de base de données relationnelle est composée de colonnes et de lignes, pas de champs !

Comment vas-tu retrouver tous les matches d'une équipe si tu l'écris de plusieurs manière ?
Il devrait donc y avoir une table des équipes, en association avec cette table des matches. Et là ça commencera à ressembler à une base de données relationnelle !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h37.


 
 
 
 
Partenaires

Hébergement Web