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

Requêtes MySQL Discussion :

Un ORDER qui depend d'un WHERE


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Juillet 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 7
    Par défaut Un ORDER qui depend d'un WHERE
    Bonjour,

    je crois qu'il s'agit la d'une requete impossible, mais peut-etre qqun a-t-il une solution...

    j'ai une table avec id, cata, catb, stara, starb

    je voudrais faire une requete de type
    SELECT id FROM table WHERE cata='1' OR catb='1' ORDER BY stara DESC LIMIT 0,10

    sauf que je voudrais que si cata=1 ce soit order by stara
    et si c'est catb=1 alors, ce soit order by starb

    sachant que stara et starb sont evidemment des valeurs numeriques simples
    est-ce faisable en une seule requete ?

    merci de votre aide
    carbon14

  2. #2
    Membre émérite
    Avatar de Biglo
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 537
    Par défaut
    Salut,

    Est-ce cela que tu veux comme résultat ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM tatable WHERE cata='1' OR catb='1' ORDER BY IF(cata='1', stara, startb) DESC;

  3. #3
    Membre habitué
    Inscrit en
    Juillet 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 7
    Par défaut
    Citation Envoyé par Biglo
    Salut,

    Est-ce cela que tu veux comme résultat ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM tatable WHERE cata='1' OR catb='1' ORDER BY IF(cata='1', stara, startb) DESC;
    Ah oui, c'est tout a fait ca !!
    J'apprends des trucs, c'est super ;-)

    Merci beaucoup, je vais tester ca tout de suite

    Carbon14

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

Discussions similaires

  1. ORDER BY ordre de sélection WHERE ? Possible ?
    Par frakosun dans le forum Requêtes
    Réponses: 8
    Dernier message: 12/03/2010, 14h12
  2. Réponses: 3
    Dernier message: 26/09/2008, 17h52
  3. Une contrainte qui depend d'une colonne
    Par redabadache3 dans le forum SQL
    Réponses: 2
    Dernier message: 03/11/2007, 13h57
  4. Réponses: 3
    Dernier message: 22/04/2007, 14h12
  5. Combobox qui depend d'une autre
    Par KOUTO dans le forum Delphi
    Réponses: 3
    Dernier message: 18/12/2006, 11h11

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