• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

NCS_One

PostgreSQL SELECT

5 mensagens neste tópico

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.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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;

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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;

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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 ?

0

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