{MySQL} Condition ds une requête Select (IF)

Résolu
guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   -  
guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'aimerai mettre une condition dans une requête "SELECT" pour afficher une colonne supplémentaire avec un libellé.
Au départ, le libellé je l'avais générer dans le code en PHP, mais je ne peux donc pas faire de tri dessus.
C'est pourquoi j'ai pensé le générer dans le select.
Cependant je ne connais pas la syntaxe et je ne sais pas ou la trouver.
Pour le moment j'ai tester avec un:
SELECT * ,(if (table1_id =2 OR table2_id=3) then "quelquechose" END) as champ_sup
FROM table1 t1
JOIN table2 t2 m ON t1.table1_ext=t2.table2_id
WHERE t1.champ="coucou"

pour avoir un affichage avec des:
**|**|table1_id|table2_id|**|champ_sup
**|**|1 |1 |**|
**|**|2 |1 |**|quelquechose

enfin par exemple... quelqu'un connaitrait l'adresse d'un tuto pour la syntaxe des ces conditions dans le select?
Merci d'avance! :)
A voir également:

3 réponses

guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   22
 
Pour ceux que ca intéresse, j'ai trouvé la solution a mon problème.

Alors dans la clause "select" il faut faire comme suit:
la syntaxe du if est: IF(test, si_vrai, si_faux)

Select *, IF(champ1 is null,IF(test2,"oui","non"),"non") from maTable
13
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
 
Du devrais aller voir du côté de CASE :
http://sql.1keydata.com/fr/sql-case.php
0
guillaume_74 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   22
 
Je vais voir ce que je peux faire avec un case, seulement c'est plutot un "IF" qu'il me faut (j'ai pas le droit de mettre ma vrai requête) mais elle est un peu plus complexe que de tester 2 valeurs.

C'est plutot du genre: si un champs est renseigner et pas un autre, tu mets telle valeur...
sinon, si telle valeur = telle autre valeur, tu mets "concaténé("blabla" + valeur de tel champ + "blabla)

en gros...
-2