Inner Join com Array
18/02/2017
0
Pessoal, boa noite
Estou desenvolvendo um trabalho do curso em que preciso usar um inner join "Integer[] = Integer". Alguém consegue me ajudar?
Instrução SQL
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
+ 0
Responder
Posts
23/02/2017
Aline Bianchini
Olá João,
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?
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?
Responder
24/02/2017
João Natividade
Ah, já consegui resolver
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
Responder
Clique aqui para fazer login e interagir na Comunidade :)