2016-08-02 11 views
0

Ich habe 2 TabellenDatenbank holen alle, wo etwas existieren von anderen Datenbanktabelle

First have id, fromid, post 
Second have id, myid, userid 

Zunächst ist für alle Beiträge von allen Benutzern

SecondhandWir Lieblings Benutzer ist, wo myid zeigt id von Benutzer, die andere gemacht als Favoriten und Benutzer-ID sind id von favorited Benutzer

Jetzt möchte ich die Ausgabe nur Beiträge von Benutzern, die

in Worten mit myid in Lieblingstisch sind Ich würde sagen, alle Posts ausgeben, wo ID ist gleich Benutzer-ID aus zweiter Tabelle, wo Benutzer-ID mit MyID verbunden ist

Ich habe versucht, aber ich bekomme nichts.

$sqli = "SELECT * FROM posts WHERE  
EXISTS (SELECT * FROM favppl WHERE myid='$username' AND userid!='$username')"; 

OR Frage wie folgt aus: Ich möchte alle von Post-Tabelle auszuwählen und die Prüfung von Post Tabelle nicht AbsenderID ist irgendwo in favppl Tabelle in Benutzer-ID-Feld mit myid verbunden, die zu

etwas gleich
+0

Lassen Sie laufen? –

+0

Yeah alone es funktioniert alles .. – Skyey

+0

Ist 'userid' vielleicht numerisch? Bitte zeigen Sie uns ein bisschen Daten und/oder Schema. –

Antwort

0

Sie benötigen die ID zu verwenden, die das Paar in der anderen Tabelle finden wird. Ich habe hier die richtige Anfrage geschrieben. Sie können Ihre gewünschten ID-Feldnamen verwenden. soll ich die Spalte ‚myid‘ die die Unterabfrage allein um zu überprüfen, es kehrt Reihen hält Post ids

SELECT * FROM posts WHERE  
id IN (SELECT myid FROM favppl WHERE myid='$postId' AND userid!='$username') 
+0

Das ist, was ich brauchte dank – Skyey

+0

@Skyey. Froh, dass ich Helfen kann. Kein Problem – Mojtaba