Estou tentando fazer uma subconsulta no postgresql mas apresentando erro , como sou iniciante poderia me ajudar por favor

05/07/2019

0

select(CAST(C.banco AS VARCHAR(5)) || CAST(C.agencia AS VARCHAR(5)) || CAST(C.conta AS VARCHAR(5))) from public.t_contas c
where c.banco = select c.banco from public.t_contas as A2_BANCO
Patrícia Pereira

Patrícia Pereira

Responder

Posts

05/07/2019

Emerson Nascimento

Os campos banco, agencia e conta são de que tipo?
Aquele condição no where é totalmente desnecessária,além de não fazer sentido, porque você está utilizando como filtro da subselect o conteúdo de um campo da própria tabela que está sendo listada.

tente algo assim, se os campos NÃO forem caractere (char, varchar, nchar, nvarchar, etc):
select CAST(c.banco AS VARCHAR(5)) || CAST(c.agencia AS VARCHAR(5)) || CAST(c.conta AS VARCHAR(5))
from public.t_contas c

se os campos já forem caractere, não precisa do CAST:
select (c.banco || c.agencia || c.conta) conta
from public.t_contas c

se há risco de algum campo estar nulo (conteúdo NULL), você precisa atribuir um valor, senão a concatenação falha:
select (coalesce(c.banco,'') || coalesce(c.agencia,'') || coalesce(c.conta,'')) conta
from public.t_contas c

para ter uma resposta mais precisa, publique a estrutura da tua tabela.
Responder

07/09/2019

Jair N.

Boa Tarde, tu deveria indicar o erro que a princípio acredito que sua cláusula "WHERE". Não entendi o do "porquê" se relacionar com a mesma tabela para se filtrar o banco? No teu caso, olha só o atributo "banco" código né, deverá se repetir nesta entidade "public.t_contas", a tabela está te retornando vários para o relacionamento "=" veja a instrução alternativa "IN". Mas mesmo assim dá para entender esta sua "sub consulta". Qual o objetivo?

Atc
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar