Inner Join com Array
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
Curtidas 0
Respostas
Aline Bianchini
18/02/2017
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?
GOSTEI 0
João Natividade
18/02/2017
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
GOSTEI 0