Aide pour un IF en SQL si = 0 On n'affiche pa
Fushiida
-
Fushiida -
Fushiida -
Bonjour,
Alors voila j'aurai aimer savoir comment on peut formuler en sql"SI la casse est vide, alors on ne l'affiche pas" Merci d'avance
Alors voila j'aurai aimer savoir comment on peut formuler en sql"SI la casse est vide, alors on ne l'affiche pas" Merci d'avance
21 réponses
- 1
- 2
Suivant
-
Le if s'exprime avec un CASE when ... then ... else ... end as "renomme ta colonne"
-> exemple :
SELECT nom, prenom, CASE when justifier is null
then 'Jamais absent(e)'
end as "Absences"
FROM etudiants; -
-
-
Enfaite elle est remplie, mais quand elle est a 0 je ne veut rien afficher
Et je ne veut pas afficher autre chose a la place, mais ne pas l'afficher -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
Je test sa tout de suite J'ai ce code
SELECT * FROM player.item,player.item_proto,site.bonus,site.bonus2 WHERE player.item.vnum = player.item_proto.vnum AND player.item.attrtype0 = site.bonus.vnum_bonus AND player.item.attrtype1 = site.bonus.vnum_bonus AND player.item.attrtype2 = site.bonus.vnum_bonus AND player.item.owner_id = 36023
Mes lignes sont répéter plusieurs fois en doublon, comment je peut résoudre sa ?
Merci pour les réponse rapides
Avez vous Skype sinon ? -
Pour les doublons tu mets DISTINCT(tavariable) dans le select.
ex : SELECT DISTINCT(tavariable1), tavariable2 ...
Cet exemple supprime les doublons de variable1 mais pas de la variable 2 , mais ça marche pareil si tu veux le faire pour la 2 aussi.
Pas de problème :) -
J'ai éditer mon post précédent
La fonction tavariable<>0 ne m'affiche plus du tout ma requette, hors moi je veut qu'elle s'affiche, mais qu'elle ne lise pas le 0
yurima.fr/Newww/index.php?p=inventaire2
Vous comprendrez mieux -
Ah oui d'accord !
Tu dois imbriquer une requete dans une autre.
je reprends mon exemple:
select distinct(tavariable1), tavariable2
from tatable
where tavariable2<>(SELECT tavariable2 From tatable Where tavariable2<>0);
C'est mieux?
Enfin pour le coup je n'en suis pas sur -
-
-
-
C'est bon.
select nom, case when prenom='Paul' then '' else prenom end
from etudiants
c'est un exemple mais pour toi le 0 sera a la place de 'Paul'.
c'est bien ça que tu veux??
(Ce qui est après then c'est deux apostrophes l'une a la suite de l'autre sans espace) -
A quoi sert le "else prenom end " ?
ET sa m'affiche une erreur
Erreur SQL ! SELECT * WHEN attrtype0='0' then '' else attrtype0 FROM
J'ai fait ceci comme requette
$requette2 = ("SELECT * WHEN attrtype0='0' then '' else attrtype0 FROM player.item,player.item_proto,site.bonus,site.bonus2,site.bonus3,site.bonus4,site.bonus5,site.bonus6,site.bonus7,site.stat,site.stat2 WHERE player.item.vnum = player.item_proto.vnum AND player.item_proto.applytype0 = site.stat.vnum_bonus AND player.item_proto.applytype1 = site.stat2.vnum_bonus AND player.item.attrtype0 = site.bonus.vnum_bonus AND player.item.attrtype1 = site.bonus2.vnum_bonus AND player.item.attrtype2 = site.bonus3.vnum_bonus AND player.item.attrtype3 = site.bonus4.vnum_bonus AND player.item.attrtype4 = site.bonus5.vnum_bonus AND player.item.attrtype5 = site.bonus6.vnum_bonus AND player.item.attrtype6 = site.bonus7.vnum_bonus AND player.item.owner_id = 36023 "); -
tu dois pas mettre le *, tu dois séparer les varaiables pour pouvoir mettre uniquement la variable qui t'interesse dans le case. De plus tu n'as pas mis le "case"?
Dans mon cas le else prenom sert a dire que si ce n'est pas Paul, afficher la variable prenom non-modifiée. et le end c'est pour terminer le case. -
-
Toujours erreur SQL, ce coup si j'ai marquer ceci
SELECT player.item.attrtype0, player.item.attrvalue0, player.item.attrtype1, player.item.attrvalue1, player.item.attrtype2, player.item.attrvalue2, player.item.attrtype3, player.item.attrvalue3, player.item.attrtype4, player.item.attrvalue4, player.item.attrtype5, player.item.attrvalue5, player.item.attrtype6, player.item.attrvalue6, player.item_proto.locale_name, site.bonus4.traduction4, site.bonus5.traduction5, site.bonus6.traduction6, site.bonus7.traduction7, site.stat.traduction_stat, site.stat2.traduction_stat2, site.bonus2.traduction2, site.bonus.traduction, site.bonus3.traduction3, player.item_proto.applytype0, player.item_proto.applyvalue0, player.item_proto.applytype1, player.item_proto.applyvalue1 CASE WHEN attrtype0='0' then '' ELSE prenom END FROM player.item,player.item_proto,site.bonus,site.bonus2,site.bonus3,site.bonus4,site.bonus5,site.bonus6,site.bonus7,site.stat,site.stat2 WHERE player.item.vnum = player.item_proto.vnum AND player.item_proto.applytype0 = site.stat.vnum_bonus AND player.item_proto.applytype1 = site.stat2.vnum_bonus AND player.item.attrtype0 = site.bonus.vnum_bonus AND player.item.attrtype1 = site.bonus2.vnum_bonus AND player.item.attrtype2 = site.bonus3.vnum_bonus AND player.item.attrtype3 = site.bonus4.vnum_bonus AND player.item.attrtype4 = site.bonus5.vnum_bonus AND player.item.attrtype5 = site.bonus6.vnum_bonus AND player.item.attrtype6 = site.bonus7.vnum_bonus AND player.item.owner_id = 36023
Les
attrtype0
attrtype1
attrtype2
attrtype3
attrtype4
attrtype5
attrtype6
si il sont a 0 il ne s'affiche pas -
Oui il y a plusieurs erreurs. D'une il faut une virgule avant ton case .
ensuite il faut que tu fasses un case pour chaque attrtype.
et ensuite "prenom" il faut que tu le remplace par "attrtype0" pour le 1 er cas, par "attrtype1" pour le second etc... -
Oui j'ai vue mes erreur et je les est corriger, mais le 0 s'affiche toujours
player.item_proto.applyvalue1,CASE WHEN attrtype0='0' THEN '' ELSE attrtype0 END
Ou il existe pas une fonction pour dire, si attrtype0 = 0 alors il est null ? -
- 1
- 2
Suivant