2017-06-23 1 views
0

Ich habe geschaut und geschaut und kann nirgends eine Antwort finden, also hoffe ich, dass ihr mir helfen könnt. Ich ziehe Daten aus mehreren Tabellen mit einem linken Join. Einige Informationen sind nicht in der richtigen Tabelle, daher wird sie als NULL angezeigt. Der Endbenutzer fordert an, dass alle NULL-Werte als leer angezeigt werden. Ich kann dies leicht für Spalten mit String-Datentypen tun, aber ich war nicht in der Lage, einen Weg zu finden, dies für Spalten mit numerischen, int, money oder float Datentypen zu tun.Rückgabe entweder leer oder numerischer Wert

Siehe Screenshot für einfaches Beispiel: Example

Verwendung von SQL Sever 2012

Antwort

0

Wahrscheinlich nicht die Antwort, die Sie hören wollen, aber Sie könnten die numerischen Spalten in der Folge zu einer Zeichenfolge gesetzt konvertieren müssen Typ (nvarchar- varchar ... etc) und dann legte eine CASE WHEN Struktur in Ihrem SELECT um jede dieser Spalten und prüfen, ob der Wert des Feldes ist NULL dann drucke '' die leere Zeichenfolge.

0

Versuchen Sie dies;

select 
    NumberNull=case when ISNUMERIC(YourField)=1 then cast(YourField AS varchar(100)) else '' end 
Verwandte Themen