Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

MSSQL 2000 / Wenn NULL-Wert, dann in Ergebnis mit "00000000" auffüllen

Frage Entwicklung Datenbanken

Mitglied: flash-gordon

flash-gordon (Level 1) - Jetzt verbinden

04.01.2007, aktualisiert 16:59 Uhr, 6952 Aufrufe, 4 Kommentare

Hallo zusammen,

es geht sich um folgendes:

diese Query:

01.
  SELECT  
02.
  CONVERT(varchar(8), VERTRAG.VERENDE, 112) as "wic_rights_end" 
03.
  FROM  L2001.VERTRAG  VERTRAG 
04.
 
liefert ein Ergebnis, dass wie folgt aussieht:
01.
wic_rights_end  
02.
--------------  
03.
NULL 
04.
NULL 
05.
20060331 
06.
NULL 
07.
NULL 
08.
NULL 
09.
NULL 
10.
NULL 
11.
20031030 
12.
20031030 
13.
NULL 
14.
NULL 
15.
usw.....
jetzt möchte ich aber, dass NUR die NULL Werte mit 00000000 ersetzt werden.
Ich habe das schon mit REPLACE versucht, funktioniert aber leider nicht.

Hat da jemand eine Lösung parat?

1000 DANK im VORRAUS!

#Flash
Mitglied: Biber
04.01.2007 um 16:32 Uhr
Moin flatsch,

2 Strategien würde ich versuchen. Entweder mit COALESCE oder ISNULL, wobei bei Deinem Konstrukt die Variante mit ISNULL noch lesbarer ist.

01.
SELECT  
02.
  CASE WHEN IsNull(Vertrag.VerEnde) Then '0000000' ELSE  CONVERT(varchar(8), VERTRAG.VERENDE, 112) END as "wic_rights_end" 
03.
  FROM  L2001.VERTRAG  VERTRAG
HTH Biber
P.S. Welcher Witzbold hat denn das Feld Vertragsende "VERENDE" genannt?
Noch ein alter dBASE-Bastler mit einer Max-10-Zeichen-im-Feldnamen-Paranoia?
Bitte warten ..
Mitglied: flash-gordon
04.01.2007 um 16:37 Uhr
01.
Server: Msg 174, Level 15, State 1, Line 2 
02.
The isnull function requires 2 arguments.
Du wirst es nicht glauben, aber VERENDE ist noch nicht mal der beste Feldname in dieser DB.
Bitte warten ..
Mitglied: Biber
04.01.2007 um 16:56 Uhr
Moin,

sorry, hatte eben zu sehr um die Ecke gedacht (oder das "verende" hatte mich so durcheinander gebracht).
01.
SELECT  
02.
  IsNull(CONVERT(varchar(8), VERTRAG.VERENDE, 112), '00000000')  as "wic_rights_end" 
03.
  FROM  L2001.VERTRAG  VERTRAG
Gruß
Biber
Bitte warten ..
Mitglied: flash-gordon
04.01.2007 um 16:59 Uhr
Moin,

sorry, hatte eben zu sehr um die Ecke
gedacht (oder das "verende" hatte
mich so durcheinander gebracht).
01.
SELECT  
02.
>   IsNull(CONVERT(varchar(8), 
03.
> VERTRAG.VERENDE, 112), '00000000')  as 
04.
> "wic_rights_end" 
05.
>   FROM  L2001.VERTRAG  VERTRAG 
06.
> 
Gruß
Biber


that`s it!

Vielen vielen DANK!
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
gelöst EXCEL (OpenOffice) Inventurliste (wenn Wert dann in Tabelle 2 anzeigen) (3)

Frage von pyrolords zum Thema Microsoft Office ...

Batch & Shell
gelöst Batch Dateiabfrage. Wenn älter als dann goto (2)

Frage von Zunaras zum Thema Batch & Shell ...

Microsoft Office
gelöst Excel: Wenn Wert in Spalte A dann kopiere Zeile (8)

Frage von michi1983 zum Thema Microsoft Office ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Webbrowser
Windows 7 unbeliebte Internetseite sperren (15)

Frage von Daoudi1973 zum Thema Webbrowser ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...

Netzwerke
VLAN Verständnissproblem (9)

Frage von Dragan123 zum Thema Netzwerke ...