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...


Adrinei

Adrinei

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

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar