Tchoninho 0 Denunciar post Postado Julho 1, 2010 Olá a todos, Tenho um banco com 200 tabelas(hoje, esse valor deve aumentar), cada uma refere a um veiculo. Todas possuem um campo chamado "destino", preciso recuperar essa informação. Mas gostaria que ela ficassem no banco, pois é uma rotina que deverá ser executada num certo intervalo. No sistema, recuperamos do banco a listagem com todas as tabelas. Através de um loop, executamos a query: SELECT destino FROM "+ tables[i] +" GROUP BY destino e o resultado vamos armazenando numa outra lista. Gostaria que essa consulta fosse feita através de uma view, stored procedure, numa tabela ou um outro mecanismo que o banco disponibilize. As tabelas são algo assim: +------+-----------+----------------+---------+ | line | status | destino | conduto | +------+-----------+----------------+---------+ Utilizamos o MySql 5.1.45 Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Julho 1, 2010 Usando o dicionário de Metadados monte um script que cria uma view da forma que você quer. Com base no seu SELECT destino FROM "+ tables +" GROUP BY destino create or replace view xpto as SELECT tables[i] tabela,destino FROM "+ tables[i] +" GROUP BY destino union all ... Mas, sendo 200 tabelas isto deve ficar realmente pesado e sabe-se lá se vai funcionar de forma rápida. A view deveria ser recriada a cada nova tabela criada. Não vale a pena rever o Modelo ? Compartilhar este post Link para o post Compartilhar em outros sites