Zum Inhalt springen

MySQL-Abfrage über 2 Tabellen


Empfohlene Beiträge

Hallo Leute!

Ich programmiere gerade an einer Inventarverwaltung... (PHP/MySQL)

Nun habe ich folgende Ausgangssituation:

Tabelle "user":

userid | username | pc1 | .....

1 | oscha | 001 | ....

Tabelle "pc":

pcid | mhz | ...

001 | 1500 | ...

Wie ihr seht hat der User "oscha" den pc1 mit der userid "001! zugeordnet... so weit wohl klar.

Nun möchte ich mit hilfe von MySQL/PHP herausbekommen, welche PC's nicht zugeordnet sind.

Kann mir jemand bei meinem Problem weiterhelfen???

Danke & Gruß

oscha

*EDIT* ich konnte mir selbst behelfen, jedoch habe ich noch ein problem:

SELECT pc.pcid, pc.prozessor FROM pc INNER JOIN user ON user.pc1 = pc.pcid WHERE user.pc1 = '000'

problem folgendes: bei = 000 liefert er mir keine ergebnisse, jedoch bei = 001 ein das richtige

Link zu diesem Kommentar
Auf anderen Seiten teilen

.... FROM pc LEFT JOIN user ON pc.pcid = user.pc1 WHERE user.pc1 = '0'"

bringt auch keine ausgabe...

wenn ich jedoch als Kriterium '001' eingebe zeigt er mir den betreffenden PC *?*

vielleicht hilft das weiter... das feld pc1 und pcid sind: int(3) Zerofilled - Felder

Link zu diesem Kommentar
Auf anderen Seiten teilen

Welche Bedingung hast Du definiert wenn ein User keinen PC hat?

Wenn Du da eine Bedinung definiert hast, kannst Du diese ja abfragen.

Z.B. gibt es keinen Computer mit der ID 000 - so waere eine Möglichkeit jedem Benutzer die 000 zu verpassen der keinen PC sein eigen nennen darf, dann kannst Du ganz normal mit einem Join abfragen.

Als Leerkriterium würde ich persönlich NULL verwenden - sofern das in der DB Table auch erlaubt wurde.

Gruesse

Mr Magix

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi leute!

Die abfrage funktioniert, jedoch wirkt das kriterium immer noch nicht ganz.

bei folgenden kriterien bekomme ich keine ausgabe, obwohl es null werte in dieser spalte gibt.

:

WHERE user.pc1 = '000'

WHERE user.pc1 = '0'

WHERE user.pc1 = NULL

wenn ich nach einen wer wie 001, 002 oder 003 frage, die auch vorhanden sind, dann werden diese ausgegeben...

Zur Info: "PC1"-Spalte

INT(3), UNSIGNED ZEROFILL, NOT NULL, Standart: 000

gruß

oscha

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...