Fórum Inner Join com Array #575074
18/02/2017
0
Estou desenvolvendo um trabalho do curso em que preciso usar um inner join "Integer[] = Integer". Alguém consegue me ajudar?
CREATE TABLE clientes
(
id INTEGER DEFAULT nextval('clientes_id_seq'::regclass) PRIMARY KEY NOT NULL,
nome TEXT[] NOT NULL,
endereco TEXT[] NOT NULL,
data_cad DATE NOT NULL,
ativo BOOLEAN,
email VARCHAR(100),
rg VARCHAR(12),
cpf VARCHAR(15),
id_bairro INTEGER[] NOT NULL,
ddd INTEGER[] NOT NULL,
telefone TEXT[] NOT NULL,
telefonedescricao TEXT[],
id_operador INTEGER,
data_nasc DATE
);
CREATE TABLE bairros
(
id INTEGER DEFAULT nextval('bairros_id_seq'::regclass) PRIMARY KEY NOT NULL,
nome VARCHAR(50) NOT NULL,
id_cidade INTEGER NOT NULL,
ativo BOOLEAN NOT NULL
);
Instrução SQL
SELECT clientes.id as id, clientes.nome as nome,
clientes.endereco as endereco, (bairros.nome) as bairro, clientes.telefone as telefone,
clientes.ativo as ativo FROM clientes
INNER JOIN bairros on (clientes.id_bairro) = bairros.id order by id DESC
João Natividade
Curtir tópico
+ 0Posts
23/02/2017
Aline Bianchini
Td bem?
Você poderia explicar melhor o que precisa? No caso do seu exemplo, pelo que entendi, você tem uma entidade cliente e uma bairro, e quer listar os clientes e o bairro correspondente certo?
Gostei + 0
24/02/2017
João Natividade
SELECT clientes.id as id, clientes.nome as nome, clientes.endereco as endereco, (bairros.nome) as bairro, clientes.telefone as telefone, clientes.ativo as ativo FROM clientes INNER JOIN bairros on bairros.id = any(clientes.id_bairro::INTEGER[]) order by id DESC
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)