Fórum Concatenação para consulta SQL #52927
24/09/2005
0
Colegas,
Tenho uma tabela com 5 ´entradas´ e ´saídas´ e as chamo de ENT1, SAI1... agora estou precisando fazer uma consulta individual, ou seja, conforme a situação, devo pesquisar por uma OU por outra ENT/SAI. Estou usando
a cláusula CASE que está funcionando, mas gostaria de algo mais dinâmico.
Tentei com concatenação mas também não funcionou. Ex.:
AUX=´ENT´ || :I; -- eu chamaria a variável no lugar do campo
Mas isto não funcionou. Preferiria usar algo tipo C++ se fosse possível.
select ent[i] -- aqui colocaria o número do período (1-5)
from ...
Alguém sabe se isto é viável? Eae Farias? Gandalf?
Obrigado aos amigos que têm me ajudado bastante...
Tenho uma tabela com 5 ´entradas´ e ´saídas´ e as chamo de ENT1, SAI1... agora estou precisando fazer uma consulta individual, ou seja, conforme a situação, devo pesquisar por uma OU por outra ENT/SAI. Estou usando
a cláusula CASE que está funcionando, mas gostaria de algo mais dinâmico.
Tentei com concatenação mas também não funcionou. Ex.:
AUX=´ENT´ || :I; -- eu chamaria a variável no lugar do campo
Mas isto não funcionou. Preferiria usar algo tipo C++ se fosse possível.
select ent[i] -- aqui colocaria o número do período (1-5)
from ...
Alguém sabe se isto é viável? Eae Farias? Gandalf?
Obrigado aos amigos que têm me ajudado bastante...
Adrinei
Curtir tópico
+ 0
Responder
Posts
26/09/2005
Gandalf.nho
Acho que a única maneira seria usando EXECUTE STATEMENT (se estiver usando FB 1.5), mas isso diminui a performance da consulta, daí fica ao teu critéri.o
Responder
Gostei + 0
01/10/2005
Beppe
Tentei com concatenação mas também não funcionou. Ex.:
AUX=´ENT´ || :I; -- eu chamaria a variável no lugar do campo
Mas isto não funcionou. Preferiria usar algo tipo C++ se fosse possível.
select ent[i] -- aqui colocaria o número do período (1-5)
from ...
O FB suporta arrays, mas ninguém usa pq arrays, collections e campos duplicados não estão na FNF(primeira forma normal), se bem que sua tabela não está normalizada.
Pq não normaliza a tabela? Vc ganhará muito em expressividade. Veja:
select p.ent from ... inner join Periodo p on P.num = :i and p.chave_est = t.chave
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)