** RESOLVIDO ** Dúvida em select

(George Carvalho) #1

Tenho uma tabela “condomio_infraestrutura” com os campos

infraestrura_id = auto-incremento
infraestrutura = Nome da infraestrura

Em outra tabela “condomínio” entre outros campos tem

infraestrura_id com os valores dos índices de “condomio_infraestrutura”, por exemplo: 22;23;24;25;26;27;28;29;30;31;32;33;34;36

Como monto uma select para pegar os campos “infraestrura” da tabela “condomio_infraestrutura” a partir da tabela “condomínio” tendo como índice os valores de infraestrura_id?

Conto com a ajuda de vocês e antecipadamente obrigado.

(system) #2

Olá, bom dia!

Você pode tentar algo parecido com o que foi sugerido neste tópico:
http://www.netmake.com.br/forum/index.php?topic=737.msg2341;topicseen#msg2341

Mas imagino que seria mais prático (e menos confuso) criar uma 3ª tabela para realizar a ligação e utilizar Joins no select…

Tive que fazer algo parecido num sistema de cotações para buscar somente determinados fornecedores, que estavam cadastrados na mesma categoria/subcategoria/grupo dos produtos desejados e que atendiam a região do cliente…

Acho que no seu caso seria algo assim:

//TABELA DE LIGAÇÃO
CREATE TABLE `condo_infra` (
`condominio_id` INT( 10 ) NOT NULL ,
`infraestrura_id` INT( 10 ) NOT NULL
) TYPE = innodb;

// COMANDO SELECT
sc_lookup(dataset,"SELECT condominio_infraestrutura.infraestrutura FROM condominio_infraestrutura INNER JOIN condo_infra ON condominio_infraestrutura.infraestrutura_id = condo_infra.infraestrutura_id WHERE condo_infra.condominio_id = {condominio_id}");

Espero ter ajudado.

Att.
Robson

(George Carvalho) #3

Obrigado Robson,

Acho que não me expressei direito.

O campo “infraestrura_id” da tabela “condomínios” e tipo TEXT e uso CHECKBOX para gravá-los, ou seja, então os valores 22;23;24;25;26;27;28;29;30;31;32;33;34;36 estão todos no mesmo campo.

Vou esperar por alguma outra sugestão e estou analisando criar una nova tabela com aas ligações.

Muito obrigado.

George Carvalho

(Allan Medeiros) #4

George,
Acho que você vai ter que usar programação para explodir o campo, separando os IDs e preencher o compbo ‘na mão’.
Eu acho que a melhor solução é a proposta por Robson. normalizar a tabela e criar uma tabela de ligação.
[]s
Allan

(George Carvalho) #5

Obrigado amigos,

Consegui resolver usando o exemplo indicado por Robson.

Grato,

George Carvalho