2009-07-07 8 views
1

J'essaie de sélectionner des valeurs entières dans MySQL. Plusieurs des valeurs sont zéro, que je veux saisir comme une chaîne vide, et saisir les valeurs entières lorsqu'elles sont disponibles.Alternative à MySQL CASE/WHEN?

J'ai donc quelque chose comme ceci:

SELECT CASE field WHEN 0 THEN '' ELSE field, [repeat for other fields] 

Est-il possible de raccourcir ce dans la requête SQL? Est-ce que MySQL supporte l'opérateur ternaire?

Répondre

3

Il y a IF

select IF(field1=0,'',field1), ... 

Et si vos champs sont NULL, il y a IFNULL

select IFNULL(field1,'') 
+0

Il semble aussi être plus rapide que CAS/QUAND. –

+0

@SerkanYersen Source? – fancyPants