sql >> Database >  >> RDS >> Mysql

MYSQL onbekende clausule join kolom in volgende join

Probeer het zo, ik heb geen schema om het zelf te testen, maar ik heb het gevoel dat het zou moeten werken (of zoiets)

SELECT * FROM questions, connections
LEFT JOIN answers ON (questions.id = answers.id AND
                     connections.username2 = answers.username)
where connections.username1 = 'mikha';

uiteindelijk zoals dit

SELECT * FROM questions
LEFT JOIN answers ON (questions.id = answers.id)
LEFT JOIN connections ON (connections.username2 = answers.username)
where connections.username1 = 'mikha';

EDIT:ik vond dit in documentatie

Dus voor uw geval kan het zijn

SELECT * FROM questions  
LEFT JOIN connections
LEFT JOIN answers ON (connections.username1 = 'mikha' AND questions.id = answers.id AND
                 connections.username2 = answers.username)


  1. Een tekenreeks maken op postgreSQL

  2. Retourneert een lijst van alle gebruikers, gekoppeld aan hun populairste volger. Hoe meer volgers iemand heeft, hoe populairder ze zijn

  3. 'NIET LIKE' in een SQL-query

  4. Veel-op-veel-relatie om te bepalen of de gebruiker een bericht leuk vindt