Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

JOIN dinâmico MySQL


Tecnicamente, você só pode fazer isso com SQL dinâmico - o que significa Sintaxe da instrução preparada do MySQL , ou concatenação de string para criar a consulta antes de enviá-la ao banco de dados. Declarações preparadas são a escolha preferível, devido à melhor defesa de injeção de SQL.

Você poderia usar LEFT JOINs para as várias tabelas, mas isso significaria incluir várias colunas de cada uma das tabelas (armas, escudos, espadas...) que seriam nulas se a categoria não correspondesse. Seria horrível tentar extrair dados de uma única consulta ...

PS:Por que existe uma SWORD tabela? Isso não seria coberto pelo WEAPON tabela?