Top-Themen

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

MySQL - verknüpfte Abfrage?

Frage Entwicklung Datenbanken

Mitglied: conrado

conrado (Level 1) - Jetzt verbinden

02.08.2007, aktualisiert 07.08.2007, 6426 Aufrufe, 6 Kommentare

Hallo Forum,

ich habe ein Problem mit einer Datenbankabfrage.
Szenario:

Tabelle mitarb:

id name abteilung-id
1 Müller 1
2 Meier 1
3 Schulze 2
4 Beier 3
5 Brand 1


Tabelle abt:

id abtname
1 bla
2 blu
3 bli
4 blo
5 blü
6 blä
7 blö
8 blp
9 blr


Ich brauche alle Abteilungen, die in mitarb vorkommen.
Abteilungen die keinen Eintrag in mitarb haben, sollen also nicht ausgegeben werden.
Die Ausgabe müsste also lauten:

bla
blu
bli


Gibt es da irgendeine verwurschtelte SELECT-Abfrage? Man könnte das in PHP mit einer Schleife etc. lösen, aber wird bei großen Tabelle zu argen Performance-Problemen führen.
Was ich suche wäre eine elegante Lösung.

Hat jemand eine Idee?

Danke im Voraus

Conrad
Mitglied: gamma63
02.08.2007 um 14:50 Uhr
Hallo Conrad

versuch das hier

select distinct a.abtname from mitarb m, abt a where m.abteilung-id=a.id;

Grüße
Gamma
Bitte warten ..
Mitglied: conrado
02.08.2007 um 15:12 Uhr
Hallo Gamma,

hatte zuerst einen Tippfehler, aber nun läuft es. Danke vielmals, habe das System nun auch verstanden und weiss in Zukunft bescheid!

Ein Problem bleibt noch.
Als ich einfach noch alle Zeilen der Tabelle "abt" ausgeben wollte, konnte ich mit $row['id'] auf die Spalte ID der Tabelle abt zugreifen. Nun spielt ja auch noch die Spalte ID der Tabelle "mitarb" dazu. Einfach $row['id'] gibt nun nichts mehr zurück, ich habe es schon mit $row['a.id'] probiert, ohne Erfolg. Ich weiss, dass man mit SELECT id AS id2 etwas umschreiben kann, aber wo kann ich in dieses spezielle Query einsetzen?

Grüße
Conrad
Bitte warten ..
Mitglied: Guenni
02.08.2007 um 20:37 Uhr
@conrado

Hi,

wenn Tabellen gleiche Spaltennamen haben, mußt du diese
qualifizieren. Z.B.:

"select mitarb.id, abt.id .... usw".

Wenn du dann einen Alias mitgibst, kannst du diesen auch weiterverwenden:

Bei "select mitarb.id as mitarb_id, abt.id as abt_id.... usw". kannst du dann mit
$row[mitarb_id] bzw. $row[abt_id] auf die ID's mittels der Aliase zugreifen.

Gruß
Günni
Bitte warten ..
Mitglied: conrado
04.08.2007 um 12:24 Uhr
Danke auch nochmal an dich Günni, das AS kannte ich, nur war mir nicht ganz klar wo ich es bei diesem Query einsetzen soll. Habe es aber so gelöst bekommen:

select distinct a.abtname,a.id as abteilung_id from mitarb m, abt a where m.abteilung-id=a.id;
Bitte warten ..
Mitglied: SvenGuenter
07.08.2007 um 15:56 Uhr
Pass nur auf da du mit diesem Select einen Crossjoin machst. Das kann bei komplexeren Sachen zu Problemen führen. Nimm lieber einen Join

Der Select würde dann folgendermaßen aussehen
SELECT abt.abtname FROM abtname INNER JOIN mitarb ON abt.id = mitarb.amteilung-id


Gruß

Sven
Bitte warten ..
Mitglied: conrado
07.08.2007 um 15:59 Uhr
Danke Sven, bei dieser Variante ist auch der Syntax einleuchtender.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MYSQL Abfrage
gelöst Frage von datadexxDatenbanken20 Kommentare

Halo an alle MySQL Spezialisten! Wie kann ich denn am besten folgende Werte abfragen und berechnen? Ausgang für die ...

PHP
Suchfeld mit Abfrage auf eine MySQL-Datenbank
gelöst Frage von SaschaRDPHP6 Kommentare

Hallo zusammen, ich steh mal wieder auf dem Schlauch. Bin dabei ein Suchfeld auf die Webseite zu bringen. Jedoch ...

Datenbanken
MySQL Abfrage für eine Umsatzauswertung kombinieren
gelöst Frage von RedBullmachtfitDatenbanken2 Kommentare

Hallo zusammen, ich möchte Kundenumsätze aus einer MySQL (v5.6, Windows) Datenbank ziehen. Ich komme mit der Struktur jedoch nicht ...

PHP
PHP MySQL Abfrage aus Datenbank
Frage von Lost144PHP12 Kommentare

Hallo, Ich habe in einer Datenbank daten über VM's stehen. Angaben wie hostname,adresse, serverat usw. Wie kann ich in ...

Neue Wissensbeiträge
Verschlüsselung & Zertifikate

Die Hölle friert ein weiteres Stück zu: Microsoft integriert OpenSSH in Windows

Information von ticuta1 vor 2 StundenVerschlüsselung & Zertifikate

Interessant SSH-Kommando in CMD.exe und PowerShell

Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 1 TagApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 1 TagWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 1 TagWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Heiß diskutierte Inhalte
Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server19 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Kein Bild mit nur einer bestimmten Grafikkarten - Mainboard Konfiguration
gelöst Frage von bestelittHardware18 Kommentare

Hallo zusammen, ich hatte schon einmal eine ähnliche Frage gestellt. Damals hatte ich genau das gleiche Problem. Allerdings lies ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement17 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...