sql >> Databasteknik >  >> RDS >> Mysql

MySQL:Snabb uppdelning av typerna av kopplingar

Baserat på din kommentar finns enkla definitioner av var och en bäst att hitta på W3Schools Den första raden av varje typ ger en kort förklaring av jointypen

  • GÅ MED:Returnera rader när det finns minst en matchning i båda tabellerna
  • LEFT JOIN:Returnera alla rader från den vänstra tabellen, även om det inte finns några matchningar i den högra tabellen
  • RIGHT JOIN:Returnera alla rader från den högra tabellen, även om det inte finns några matchningar i den vänstra tabellen
  • FULL JOIN:Returnera rader när det finns en matchning i en av tabellerna

AVSLUTA REDIGERING

I ett nötskal, det kommaseparerade exemplet du gav av

SELECT * FROM a, b WHERE b.id = a.beeId AND ...

väljer varje post från tabellerna a och b med kommatecken som separerar tabellerna, detta kan även användas i kolumner som

SELECT a.beeName,b.* FROM a, b WHERE b.id = a.beeId AND ...

Den får sedan den instruerade informationen i raden där b.id-kolumnen och a.beeId-kolumnen matchar i ditt exempel. Så i ditt exempel får den all information från tabellerna a och b där b.id är lika med a. beeId.I mitt exempel kommer den att få all information från b-tabellen och endast information från kolumnen a.beeName när b.id är lika med a.beeId. Observera att det också finns en AND-sats, detta kommer att hjälpa till att förfina dina resultat.

För några enkla handledningar och förklaringar om mySQL-anslutningar och vänsteranslutningar, ta en titt på Tizags mySQL-tutorials. Du kan också kolla in Keith J. Browns webbplats för mer information om kopplingar är det också ganska bra.

Jag hoppas att detta hjälper dig



  1. Failover &Failback för PostgreSQL på Microsoft Azure

  2. Datariskreducering via datamaskering

  3. Med sqlalchemy hur man dynamiskt binder till databasmotorn per begäran

  4. Jquery stjärnklassificering handledning med php och mysql