Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Nach Join die Nullfelder befüllen

Frage Entwicklung Datenbanken

Mitglied: 30713

30713 (Level 1)

29.01.2009, aktualisiert 02:58 Uhr, 3088 Aufrufe, 3 Kommentare

Hallo,

brauche eine kleine Hilfestellung.
Ich führe eine MySQL-Abfrage aus mit einem LEFT JOIN, was wunderbar funktioniert.
Nur habe ich auch diverse "NULL" Felder bei diesen möchte ich aber, das dort dann einfach der "ursprungswert" hinterlegt wird ...

Meine Abfrage:

SELECT telefon.user
FROM telefonnummer
LEFT JOIN telefon ON telefon.id = telefonnummer.id

Mein Ergebnis ist dann (natürlich NUR) der User(name)
Ist aber nun in der Tabelle "Telefonnummer" eine Nummer, welche in der Tabelle "Telefon" nicht hinterlegt ist,
wird mir ein "NULL" ausgegeben.
An dieser Stelle möchte ich aber, das dann einfach die "unbekannte" Nummer angezeigt wird ...

Ist das irgendwie verständlich?

Danke und Grüße
Mitglied: godlie
29.01.2009 um 08:07 Uhr
Hm

schon mal mit einem anderen Join rumgespielt?
die da wären:

01.
Auszug aus der mysql Doku: 
02.
join_table: 
03.
    table_reference [INNER | CROSS] JOIN table_factor [join_condition] 
04.
  | table_reference STRAIGHT_JOIN table_factor 
05.
  | table_reference STRAIGHT_JOIN table_factor ON condition 
06.
  | table_reference LEFT [OUTER] JOIN table_reference join_condition 
07.
  | table_reference NATURAL [LEFT [OUTER]] JOIN table_factor 
08.
  | table_reference RIGHT [OUTER] JOIN table_reference join_condition 
09.
  | table_reference NATURAL [RIGHT [OUTER]] JOIN table_factor
ich glaub da wird schon was passendes dabei sein, ohne das du leerfelder befüllen musst.
Bitte warten ..
Mitglied: Logan000
29.01.2009 um 08:40 Uhr
Moin Moin

Ich würde den Join lassen wie er ist.
Du soltest lieber prüfen obTelenon.user null ist und dann die Nr anzeigen.
Etwa so (ungetestet):
01.
SELECT CASE WHEN telefon.user IsNull THEN telefon.Nr ELSE telefon.user END  
02.
FROM telefonnummer 
03.
LEFT JOIN telefon ON telefon.id = telefonnummer.id
Gruß L.
Bitte warten ..
Mitglied: nxclass
29.01.2009 um 09:14 Uhr
01.
SELECT 
02.
     t.user, 
03.
    CASE 
04.
        WHEN tn.telnr IS NULL 
05.
        THEN 'unbekannt' 
06.
        ELSE tn.telnr 
07.
    END AS 'telnr' 
08.
FROM 
09.
    telefon t 
10.
        LEFT JOIN telefonnummer tn ON t.id = tn.id 
11.
...
mir scheint die Beziehung zwischen den Tabellen irgendwie - eigenartig - wieso haben die die >> selben id's << !?
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst MySQL Abfrage um JOIN erweitern (14)

Frage von datadexx zum Thema Datenbanken ...

Hyper-V
gelöst Hyper-V Host Domain Join (6)

Frage von Sunny89 zum Thema Hyper-V ...

Datenbanken
SQL - Mehrere Tabellen über JOINS verketten (1)

Frage von Gwahlers zum Thema Datenbanken ...

Windows Server
gelöst WDS - mit optionalen Domain Auto-join? (1)

Frage von JiggyLee zum Thema Windows Server ...

Neue Wissensbeiträge
Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Erkennung und -Abwehr

Infineon TPMs unsicher! Bitlocker ggf. angreifbar

(4)

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Firewall

PfSense Repository für Version 2.3.x

(6)

Information von Dobby zum Thema Firewall ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (23)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...