sql >> Database >  >> RDS >> Mysql

MySQL-probleem:LEFT JOIN op lege tafel

Aangezien je je eigenlijke SQL niet hebt gepost, maak ik hier een aanname. Mijn ervaring vertelt me ​​dat je misschien een waar-clausule hebt die ervoor zorgt dat de SQL een lege set retourneert.

SELECT X.a1, X.a2, Y.b1, Y.b2 FROM X LEFT JOIN Y ON (X.a1 = Y.b1)
WHERE Y.b3 = 'something'

De bovenstaande SQL retourneert een lege resultaatset. Mogelijk moet u uw SQL wijzigen in de volgende indeling, door de problematische clausule Where naar de LEFT JOIN ON-clausule te brengen.

SELECT X.a1, X.a2, Y.b1, Y.b2 FROM X 
LEFT JOIN Y ON (X.a1 = Y.b1 and Y.b3 = 'something')


  1. Hoe kan ik het mysql-wachtwoord instellen in het mysqld_safe draait-scenario?

  2. ActiveRecord::ConnectionTimeoutError:kon geen databaseverbinding verkrijgen binnen 5.000 seconden (wachtte 5.000 seconden)

  3. MySQL-query om de laatste 3 datums in een tabel te vinden

  4. Is het veilig om leesbare wachtwoorden *tijdelijk* in MySQL op te slaan?