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

SQL Oracle Discussion :

Requête SQL avec conditions


Sujet :

SQL Oracle

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1
    Par défaut Requête SQL avec conditions
    Bonjour à tous,

    J'ai un petit soucis avec une requête SQL :
    Voici le type d'entrées que j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Numéro	Nom	Hotel	Pourcentage_1	Nombredenuit	Pourcentage 2
    					
    01A	Frank	Hilton	<Null>			<Null>		50,00
    01A	Frank	F1	100,00			<Null>		50,00
    02B	Antoine	Ozone	<Null>			2		<Null>
    02B	Antoine	Etap	100,00			5		100,00
    02B	Antoine	Ozone	<Null>			2		<Null>
    02B	Antoine	Ozone	100,00			<Null>		100,00
    02B	Antoine	Etap	<Null>			0		<Null>
    03C	Elodie	Mariott	50,00			<Null>		<Null>
    03C	Elodie	IbisEco	50,00			<Null>		100,00
    04D	Jeremy	Ibis	100,00			<Null>		100,00
    04D	Jeremy	B2B	20,00			<Null>		20,00
    Tout d'abord, qu'est ce que je souhaite obtenir ? les champs identifiés en rouges : ils correspondent chacun à une règle de gestion précise :
    Il me faut comme sortie 4 lignes pour cet exemple.

    Il me faut de manière unique un Numéro et un nom (les informations pourcentage1&2 et nombre de nuit ne servent qu'aux tris)

    1 ) Règle numéro 1 exemple numéro : 01A => Il faut que le pourcentage_1 soit supérieur au pourcentage_2 ce qui nous donne comme entrée la ligne 4 ( 01A Frank F1 )

    2 ) Règle numéro 2 : si Pourcentage_1 = Pourcentage_2, alors il faut faire la somme des nombres de nuits et prendre la valeur la plus grande: ici on a 5 > ( 2 + 2 ) donc on va sélectionner l’hôtel de la ligne 6 ( 02B Antoine Etape )

    3 ) Règle numéro 3 : Dans le cas ou l'on n'a pas une ligne avec pourcentage_1 > Pourcentage_2, on sélectionne l'entrée avec le pourcentage le plus important, en l'occurence ici l'entrée 03C Elodie IbisEco car elle contient 100 en pourcentage_2

    4 ) Règle numéro 4 : en cas d'égalité de pourcentages mais pas de nombre de nuit pour faire la comparaison, on sélectionne l'entrée ayant le pourcentage le plus important , ici 04D Jeremy Ibis car 100 > 20.

    Il y a donc 4 régles de gestions , j'ai pensé à utiliser un ifthenelse imbriqué ou un case mais je ne parviens pas a le construire.

    Ma table s'appelant T1 et les champs numéro, nom et hotel sont des varchar alors que pourcentage_1&2 ainsi que nombredenuit sont des décimaux.
    Le soucis est qu'en plus des 4 régles ç gérer , on a une somme a faire dans un cas avec les nuits d'hotels et donc le group by associé.

    La requête que j'imagine serait :
    Select numero, nom, Hotel
    From T1
    + Mes conditions

    Mon problème est que je n'arrive pas à visualiser comment regrouper mes données et requêter par groupe de plusieurs lignes ni comment effectuer des comparaisons sur les même champs.

    J'ai essayé d'utiliser des nvl pour supprimer les valeurs nulles sur les nuits d'hotel mais ca ne me permet que de régler un seul cas( le numéro 2 ).

    Toute aide serait grandement, voir inestimablement appréciée.

    Merci !
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Requête SQL avec une condition portant sur date
    Par kekule10 dans le forum PyQt
    Réponses: 3
    Dernier message: 03/08/2014, 01h56
  2. fusionner requête SQL avec conditions différentes
    Par breizhlama dans le forum Langage SQL
    Réponses: 7
    Dernier message: 16/05/2011, 14h36
  3. Requêtes SQL avec conditions
    Par leukes dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/07/2008, 09h30
  4. Requête SQL avec condition
    Par charlix dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/03/2008, 11h38
  5. [MySQL] concaténer une requête sql avec condition
    Par maliak dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 10/02/2006, 12h01

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