sql >> Database >  >> RDS >> Mysql

MySQL dynamisch JOIN

Technisch gezien kun je dit alleen doen met dynamische SQL - wat betekent syntaxis van de voorbereide verklaring van MySQL , of tekenreeksaaneenschakeling om de query te maken voordat deze naar de database wordt verzonden. Voorbereide verklaringen hebben de voorkeur, vanwege een betere verdediging tegen SQL-injectie.

Je zou LEFT JOINs kunnen gebruiken voor de verschillende tabellen, maar het zou betekenen dat je meerdere kolommen van elk van de tabellen (wapens, schilden, zwaarden...) moet opnemen die nul zouden zijn als de categorie niet overeenkwam. Het zou verschrikkelijk zijn om te proberen gegevens uit een enkele zoekopdracht te halen...

PS:Waarom is er een SWORD tafel? Zou dat niet gedekt worden door het WEAPON tafel?




  1. MySQL-query om records weer te geven met de huidige datum bovenaan en andere in aflopende volgorde

  2. PHP kan onder bepaalde omstandigheden de mysql-containernaam niet oplossen

  3. Heroku Postgres-fout:PGError:FOUT:relatieorganisaties bestaan ​​niet (ActiveRecord::StatementInvalid)

  4. Refactor externe sleutel naar velden