2009-07-07 11 views
1

Ich versuche einige Integer-Werte in MySQL auszuwählen. Mehrere der Werte sind Null, die ich als eine leere Zeichenfolge greifen möchte, und die Integer-Werte abrufen, wenn sie verfügbar sind.Alternative zu MySQL CASE/WANN?

So habe ich so etwas wie diese:

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

Gibt es eine Möglichkeit, dies in der SQL-Abfrage zu verkürzen? Unterstützt MySQL den ternären Operator?

Antwort

3

Es gibt IF

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

Und wenn Ihre Felder NULL sind, gibt es IFNULL

select IFNULL(field1,'') 
+0

Es scheint auch schneller als CASE/WHEN. –

+0

@SerkanYersen Quelle? – fancyPants