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, 3062 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 ...

Batch & Shell
gelöst PowerShell Domain Join (2)

Frage von Patrick-IT zum Thema Batch & Shell ...

Datenbanken
gelöst SQL Multiple Join auf selbe ID (3)

Frage von Memo66 zum Thema Datenbanken ...

Microsoft Office
gelöst Excel: Matirx mit Formel automatisch befüllen (5)

Frage von sims zum Thema Microsoft Office ...

Neue Wissensbeiträge
Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(3)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (41)

Frage von Datsspeed zum Thema Exchange Server ...

Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Off Topic
gelöst Fachzeitschriften als E-Book oder hardcoded? (11)

Frage von KowaKowalski zum Thema Off Topic ...

Windows 10
Windows Store Apps ohne Windows Store installieren (10)

Frage von keefien zum Thema Windows 10 ...