Accueil > Forum > > > > Relevez le défi - SQL pour loterie
Relevez le défi - SQL pour loterie
vendredi 16 septembre 2005 à 17:42:43 |
Relevez le défi - SQL pour loterie

bergueira
|
Bonjour.
J' ai mis en sujet 'Relevez le défi car je crois que c' est vraiment un défi ce que je vaux ! ;) ).
J' ai besoin d'un query (en SQL pour la placer dans mon code java qui se connecte à une base de données MySql) qui me permette de selectionner les gagnants des concours. - Chaque joueur selecctionne 6 numéros (C1, C2, C3, C4, C5, C6) par bulettin; - Le tirage a 6 numéros (N1, N2, N3, N4, N5, N6); - Il y a les classements suivants: * Premier prix: les joueurs qui ont les 6 numéros; * Deuxième prix: les joueurs qui ont 5 numéros; * Troisième prix: les joueurs qui ont 4 numéros; * Quatrième prix: les joueurs qui ont 2 numéros;
J' aimerais avoir comme résultats les bulletins avec leur prix correspondant; Atention qu' un seul prix (le plus haut) ne peut-être présenté par bulletin (et non pas, par exemple, un deuxième prix + 3 troisième prix + 12 quatrième prix).
Merci d' avance à tous.
Carlos Bergueira
|
|
lundi 26 septembre 2005 à 16:35:40 |
Re : Relevez le défi - SQL pour loterie

DuckyLuke
|
Voilà une solution possible:
La première requête crée une table temporaire (écrase la table existante si elle existe déjà) avec le nom du joueur et 6 colonnes.
Dans la première colonne, on met 1 si le numéro correspond à un numéro de la table tirage. Sinon, on met 0
On fait parait avec les 5 autres colonnes...
Ensuite on lance une requête sur la table temporaire créée pour afficher les joueurs gagnants. (On filtre sur 3 numéros trouvés minimum)
-- *****Création de la table d'analyse des tirages*****
SELECT nom,
(IIF(C1 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) AS EXPR1,
(IIF(C2 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) AS EXPR2,
(IIF(C3 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) AS EXPR3,
(IIF(C4 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) AS EXPR4,
(IIF(C5 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) AS EXPR5,
(IIF(C6 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) AS EXPR6
INTO TEMP_TABLE
FROM joueur, tirage
;
-- *****Affichage des résultats par joueurs gagnants (par nombres de numéros trouvés)*****
SELECT nom, SUM(EXPR1 + EXPR2 + EXPR3 + EXPR4 + EXPR5 + EXPR6) As NB_NUM
FROM TEMP_TABLE
GROUP BY nom
HAVING Sum(EXPR1+EXPR2+EXPR3+EXPR4+EXPR5+EXPR6) > 2
ORDER BY Sum(EXPR1+EXPR2+EXPR3+EXPR4+EXPR5+EXPR6) DESC
;
Voilà voilà... pas très compliqué... :P
|
|
lundi 26 septembre 2005 à 18:46:40 |
Re : Relevez le défi - SQL pour loterie

bergueira
|
Je te remercie pour ton aide, mais ce que je veux est un peu plus 'complexe'. Je veux un query optimizé. Trés très rapide ! En créant une table je perds bcp de temps; c' est une des possibilitées mais ce n' est pas la plus rapide.
Je te remercie quand même pour ton aide !
Si qq a une autre idée... je suis prennant ! ;)
Merci.
Carlos Bergueira
|
|
mardi 27 septembre 2005 à 09:49:19 |
Re : Relevez le défi - SQL pour loterie

DuckyLuke
|
Si tu ne donnes pas toutes les infos tu peux pas t'attendre à avoir la bonne réponse du premier coup...
Si tu creuses un peu la requête ci-dessus, tu arriveras vite au résultat suivant:
SELECT nom,
SUM(
(IIF(C1 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C2 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C3 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C4 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C5 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C6 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0))
) AS NB_NUM
FROM joueur, tirage
GROUP BY nom
ORDER BY SUM(
(IIF(C1 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C2 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C3 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C4 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C5 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0)) +
(IIF(C6 In ([N1],[N2],[N3],[N4],[N5],[N6]), 1, 0))
) DESC
;
Facile... :P
|
|
Cette discussion est classée dans : sql, prix, joueurs, défi, numéros
Répondre à ce message
Sujets en rapport avec ce message
Date dans sql server 2000 [ par Boudchiche ]
Salut Avant je vous juste vous dire que j'ai chercher pendant 2 jours soit par google et dans le forum mais je n'ai rien trouvece que s'est que lorsqu
requête sql (update avec deux bases) [ par jee0404 ]
Bonjour, Je veux pouvoir updater le prix de mes enregistrements de la base de donnée 1 avec les prix de la base de donné 2 , si le champ it
problème avec une requete sql [ par ulysse00 ]
bonsoir j'ai une table s'appèle table1 qui contient deux champ code et prix code | prix 100 | 200 300 | 4500 400 | 300 je cherche à fai
requete sql pour comparer deux entier [ par wis_soft ]
bonjour tout le monde je veut lancer une requete pour selectionner les article dont la valeur et entre min_prix et max_prix est ce que je peut faire
sql requettes [ par sfpirate ]
bonjour à tous, voila je vais rentrer dans le vif du sujet je beug sur une requettes j'ai une table telque type de siege prix_par_siege rangé
Probleme Ms SQL2005 + nvarchar(Max) : Aucun affichage [ par dadbn ]
Bonjour à tous, J'ai un soucis avec ma requete SQL (MS SQL Server 2005 + IIS) sur un champs du type nvarchar(MAX). En effet, je n'ai pas le résultat q
Les types en sql [ par Psyghoria ]
Bonjour, Je fais dans le cadre de mon BTS un formulaire de gestion de base de donnée avec la possibilité de rajouter des colonnes par exemple. Or pou
Problème SQL pour gérer les clés étrangéres (urgent) [ par lilj ]
Bonsoir, Aprés avoir crée des tables et les requêtes pour les contraintes d'intégrité référentiel, je m'aperçois en faisant des test que la base ne l
Lien ODBC [ par sepultur68a ]
Hello, je me tourne vers vous car je ne suis vraiment a bout d'idées. J'ai actuellement une base de données SQL, que je configure par le biais de Mic
grouper resultats d'une requete [ par o06 ]
Bonjour le forum, toujours novice avec SQL, et encore en galère. En bref : j'ai 2 tables distinctes qui contiennent les "mêmes types" de champs. Je s
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|