VARIAVEL NO FROM DA TABELA
Boa tarde Pessoal !!
estou com um problema que tenho 5 tabelas praticamente idênticas, não posso unir em um tabelão pois vai ficar dificil a manutenção para o usuário
preciso buscar um valor destas tabelas mas antes definir de que tabela buscar
Gostaria de fazer um SELECT usando uma variável no FROM, exemplo:
Field_tabela := TABELA01;
SELECT * FROM Field_tabela;
é possível fazer isso de alguma maneira , aguardo uma resposta meus amigos e agradeço desde já
estou com um problema que tenho 5 tabelas praticamente idênticas, não posso unir em um tabelão pois vai ficar dificil a manutenção para o usuário
preciso buscar um valor destas tabelas mas antes definir de que tabela buscar
Gostaria de fazer um SELECT usando uma variável no FROM, exemplo:
Field_tabela := TABELA01;
SELECT * FROM Field_tabela;
é possível fazer isso de alguma maneira , aguardo uma resposta meus amigos e agradeço desde já
Luiz Zacchi
Curtidas 0
Melhor post
Emerson Nascimento
22/05/2019
Eu não conheço a sintaxe ORACLE, mas deve ser algo assim:
Porque você precisa concatenar a variável 'tabela', e não abrir a tabela 'tabela'.
EXECUTE IMMEDIATE 'SELECT TUBO6 FROM ' + TABELA + ' WHERE STRING = ''QTX(I)/2'' '
GOSTEI 1
Mais Respostas
Emerson Nascimento
21/05/2019
pesquisa por EXECUTE IMMEDIATE.
Aqui mesmo no Devmedia você encontra dicas sobre esse assunto:
https://www.devmedia.com.br/sql-dinamico-no-oracle-parte-1/6062
Aqui mesmo no Devmedia você encontra dicas sobre esse assunto:
https://www.devmedia.com.br/sql-dinamico-no-oracle-parte-1/6062
GOSTEI 0
Luiz Zacchi
21/05/2019
pesquisa por EXECUTE IMMEDIATE.
Aqui mesmo no Devmedia você encontra dicas sobre esse assunto:
https://www.devmedia.com.br/sql-dinamico-no-oracle-parte-1/6062
Aqui mesmo no Devmedia você encontra dicas sobre esse assunto:
https://www.devmedia.com.br/sql-dinamico-no-oracle-parte-1/6062
OBRIGADO PELA AJUDA
SELECT VAOFILACENTRAL INTO FIELD_VAOFILACENTRAL FROM AD_PARAMSEGUIDOR WHERE TIPO = FIELD_MATERIA_SEG AND ISOPLETA = FIELD_ISOPLETA;
IF FIELD_VAOFILACENTRAL =7 THEN
TABELA:= 'AD_TOVPS7';
ELSIF FIELD_VAOFILACENTRAL =6 THEN
TABELA:= 'AD_TOVPS6';
ELSIF FIELD_VAOFILACENTRAL =5 THEN
TABELA:= 'AD_TOVPS5';
ELSIF FIELD_VAOFILACENTRAL =4 THEN
TABELA:= 'AD_TOVPS4';
ELSIF FIELD_VAOFILACENTRAL =3 THEN
TABELA:= 'AD_TOVPS3';
ELSIF FIELD_VAOFILACENTRAL =2 THEN
TABELA := 'AD_TOVPS2';
END IF;
EXECUTE IMMEDIATE 'SELECT TUBO6 FROM TABELA WHERE STRING = QTX(I)/2'
INTO TUBO2(I)
USING TABELA;
TENTEI USAR ESTE COMANDO NESTA SINTAXE, POREM NAO FUNCIONOU
GOSTEI 0
Emerson Nascimento
21/05/2019
Eu não conheço a sintaxe ORACLE, mas deve ser algo assim:
Porque você precisa concatenar a variável 'tabela', e não abrir a tabela 'tabela'.
EXECUTE IMMEDIATE 'SELECT TUBO6 FROM' + TABELA + 'WHERE STRING = ''QTX(I)/2'''
GOSTEI 0
Luiz Zacchi
21/05/2019
Eu não conheço a sintaxe ORACLE, mas deve ser algo assim:
Porque você precisa concatenar a variável 'tabela', e não abrir a tabela 'tabela'.
EXECUTE IMMEDIATE 'SELECT TUBO6 FROM ' + TABELA + ' WHERE STRING = ''QTX(I)/2'' '
ok!
vou tentar obrigado !!
GOSTEI 0