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

Existe uma maneira de tornar um nome de tabela dinâmico em uma consulta?


Não, não há como fazer isso. O nome da tabela deve ser conhecido no momento da análise da consulta, para que o analisador possa saber se a tabela existe e se ela contém as colunas às quais você faz referência. Além disso, o otimizador precisa conhecer a tabela e seus índices, para que possa elaborar um plano de quais índices usar.

O que você está pedindo é que a tabela seja determinada durante a execução, com base nos dados encontrados linha por linha. Não há como o RDBMS saber em tempo de análise que todos os valores dos dados correspondem a tabelas reais.

Não há motivo para você fazer isso para implementar Herança de tabela de classe . CTI suporta referências verdadeiras entre tabelas.

Em vez disso, você está descrevendo o antipadrão de Associações Polimórficas.