sql >> Database teknologi >  >> RDS >> Mysql

MySQL dynamisk JOIN

Teknisk set kan du kun gøre dette med dynamisk SQL - hvilket betyder MySQL's Prepared Statement-syntaks , eller strengsammenkædning for at oprette forespørgslen, før den sendes til databasen. Forberedte erklæringer er det foretrukne valg på grund af bedre SQL-injektionsforsvar.

Du kunne bruge LEFT JOINs til de forskellige tabeller, men det ville betyde at inkludere adskillige kolonner fra hver af tabellerne (våben, skjolde, sværd...), som ville være nul, hvis kategorien ikke matchede. Det ville være forfærdeligt at forsøge at trække data ud fra en enkelt forespørgsel...

PS:Hvorfor er der et SWORD bord? Ville det ikke være dækket af WEAPON bord?




  1. mysql for at få rekorddybde, tælle forælder- og forfædreposter

  2. Sådan sporer du sidevisninger uden at tæske MySQL DB

  3. Sådan får du første række pr. gruppe i PostgreSQL

  4. Hvad er det maksimalt tilladte antal joinforbindelser i SQL Server 2008?