MYSQL if statements
Résolu
Smoking bird
Messages postés
911
Statut
Membre
-
Smoking bird Messages postés 911 Statut Membre -
Smoking bird Messages postés 911 Statut Membre -
Bonjour,
Je cherche un tuto sur l'utilisation du if statement en mysql, mais impossible d'en trouver. Si personne n'en connait, quelqu'un saurait il si on peut se servir du if mysql dans une requête passée par php?
En vous remerciant,
Smoke
--
Tout le pouvoir du bambou
Je cherche un tuto sur l'utilisation du if statement en mysql, mais impossible d'en trouver. Si personne n'en connait, quelqu'un saurait il si on peut se servir du if mysql dans une requête passée par php?
En vous remerciant,
Smoke
--
Tout le pouvoir du bambou
Configuration: personnelle^^
11 réponses
-
La documentation non ?
En général, on se sert plus de case que de if. -
bin justement, la doc m'aide pas franchement pour ce qui m'intéresse :s, de plus, je n'ai jamais vu d'aide php dans la doc mysql^^ :s
-
Quel rapport avec le php ?
http://dev.mysql.com/doc/refman/5.0/fr/if-statement.html
http://dev.mysql.com/doc/refman/5.0/fr/case-statement.html -
Lol, merci de ton intérêt^^ j'ai déjà parcouru la doc sur le if, mais pas sur le case.
En fait je trouve pas comment j'pourrais intéresser un if mysql dans une requête mysql appellée via php :s j'trouve rien dessus :s -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Montre un exemple de requête que tu voudrais obtenir ;)
-
SELECT DISTINCT count( n.ref ) , n.chatTag, n.ref, n.Date, n.Titre, n.author, n.reader, a.artName FROM notebox n INNER JOIN accounts a ON begin if n.reader='0000000001' then n.author=a.tag; else n.reader = a.tag end// WHERE ( n.reader = '0000000001' OR author = '0000000001' ) AND n.Stat >0 AND n.Own LIKE '%0000000001%' GROUP BY n.chatTag LIMIT 0 , 30
-
Utilise le case, ou la fonction if() si tu n'as que 2 états, la structure if|else ne doit pas être utilisable directement dans une requête.
-
Salut, et merci pour ton coup de main au passage :)
Comment suis je supposé intégrer ces conditions dans ma requête? comme ça, sauvagement, avec des délimiteurs précis? -
Non, sans délimiteurs.
Avec CASE, cela devrait faire :... FROM notebox n INNER JOIN accounts a ON CASE n.reader WHEN '0000000001' THEN n.author=a.tag ELSE n.reader = a.tag END WHERE ...Et avec la fonction IF :... FROM notebox n INNER JOIN accounts a ON IF(n.reader='0000000001', n.author=a.tag, n.reader = a.tag) WHERE ...
-
ouaaaaaaaaaaaaaa ça m'a tout l'air de marcher!!! je colle ça dans mon php pour vérifier et j'te dis :)
-
Bon, okay, ça devrait le faire maintenant :) ça m'a évité pas mal de galères avec php!! Je laisse mon ancien code en commentaire, histoire de mettre à l'épreuve le système actuel^^
En tous cas merci pour ton aide, je planchais dessus depuis une bonne semaine :)
Bonne journée!