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

Nach Join die Nullfelder befüllen

Frage Entwicklung Datenbanken

Mitglied: 30713

30713 (Level 1)

29.01.2009, aktualisiert 02:58 Uhr, 3071 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
Windows Server
gelöst WDS - mit optionalen Domain Auto-join? (1)

Frage von JiggyLee zum Thema Windows Server ...

Datenbanken
gelöst Join über drei Tabellen (5)

Frage von Kimaro zum Thema Datenbanken ...

Windows 10
WINDOWS 10 Startmenü Fehler nach Domain Join und GPO (11)

Frage von seltsam zum Thema Windows 10 ...

Datenbanken
gelöst SQL ORDER BY und Join mit 2 Tabellen (7)

Frage von Dipps zum Thema Datenbanken ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (16)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

CMS
Lokales Wordpress im LAN - wie aufsetzen? (15)

Frage von Static zum Thema CMS ...

LAN, WAN, Wireless
IP im privaten Netz nicht erreichbar (14)

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

Java
gelöst Net user per script aus txt oder csv für FTP (12)

Frage von OlliPWS zum Thema Java ...