Ir para o conteúdo
NCS_One

PostgreSQL SELECT

Mensagens Recomendadas

NCS_One    2
NCS_One

Boas.

É possivel no mesmo "select" fazer um query a uma tabela e com um campo que é

retornado fazer um query a outra tabela ?

Ex:

Table1 tem : user_id e user_name.

Table2 tem : table_id e user_id.

Fazer um query à Table2 para retornar o user_id e com esse user_id ir à Table1 buscar o

user_name de quem tem o user_id igual ao que foi retornado pela Table2.

Agradeço toda a ajuda.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
NCS_One    2
NCS_One

Seria qualquer coisa como isto ?

SELECT Table2.user_id, Table1.user_name FROM Table2 WHERE Table2.table_id = 1
             INNER JOIN Table1 ON (Table1.user_id = Table2.user_id);

ou :

SELECT Table2.user_id, Table1.user_name FROM Table2, Table1
             WHERE Table2.table_id = 1 AND Table1.user_id = Table2.user_id;

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Betovsky    2
Betovsky

O que queres é tipo a primeira hipotese mas tens o WHERE no sitio incorrecto. O WHERE vem depois dos JOINs.

SELECT Table2.user_id
     , Table1.user_name 
FROM Table2 INNER JOIN Table1 
    ON (Table1.user_id = Table2.user_id)
WHERE Table2.table_id = 1;

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
NCS_One    2
NCS_One

Obrigado.

Mais uma coisa, se for uma lista limitada como o faço ?

SELECT Table2.table_id, Table2.user_id FROM Table2 ORDER BY Table2.table_id DESC LIMIT 10 OFFSET 0

Assim vou buscar a lista, mas como faço para ir buscar o Table1.user_name ?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade