Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá Amigos, sou principiante e estou com uma dúvida danada aqui:
Tenho uma tabela produtos (id, categoria, itens) onde, na àrea Administrativa, meu cliente insere tanto as Categorias quantos
seus itens. Exemplo:
id, categoria, itens
1, Higiene, Sabonete;
2, Higiene, Creme dental;
3, Alimentos, Arroz;
4, Bebidas, Suco de Uva;
5, Alimentos, Feijão;
6, Limpeza, Detergente;
7, Bebidas, Cerveja;
8, Bebidas, Refrigerante;
9, Alimentos, Farinha de Trigo;
10, Limpeza, Sabão em Pó;
11, Higiene, Cotonetes;
12, Limpeza, Água Sanitária;
e assim por diante...
Preciso que, ao consultar essa tabela "produtos", o resultado exibido seja assim:
Alimentos:
Arroz
Feijão
Farinha de trigo
...
Bebidas:
Suco de Uva
Cerveja
Refrigerante
...
Higiene:
Sabonete
Creme Dental
Cotonetes
...
Limpeza:
Detergente
Sabão em Pó
Água Sanitária
...
Lembrando que outras Categorias e Itens poderão ser inseridos.
Alguém poderia me ajudar??? Desde já agradeço!
Olá Bruno, obrigado pela ajuda! Até aqui (SELECT item.id AS id_item, item.nome AS nome_item, item.id_categoria, categoria.nome FROM item JOIN categoria ON item.id_categoria = categoria.id) eu entendi legal, mas como eu faço para colocar o resultado nas variáveis para exibí-los???
Mostra aí como você tentou.
Carlos Eduardo
'Normalize' as tabelas.
Separe em 2 tabelas:
TABELA item (id, nome, id_categoria)
TABELA categoria (id, nome)
E ai você relaciona as 2 tabelas. Fazendo tudo em uma só, você terá muito mais dor de cabeça.
Exemplo de JOIN:
SELECT item.id AS id_item, item.nome AS nome_item, item.id_categoria, categoria.nome
FROM
itemJOIN categoria ON item.id_categoria = categoria.idEstrutura sugerida:
--
-- Estrutura da tabela
item--
--
-- Extraindo dados da tabela
item--
INSERT INTO
item(id,nome,id_categoria) VALUES(1, 'Sabonete', 2),
(2, 'Creme Dental', 2),
(3, 'Arroz', 1),
(4, 'Suco de Uva', 3),
(5, 'Feijão', 1),
(6, 'Cerveja', 3),
(7, 'Refrigerante', 3),
(8, 'Farinha de Trigo', 1),
(9, 'Cotonetes', 2);
--
-- Estrutura da tabela
categoria--
--
-- Extraindo dados da tabela
categoria--
INSERT INTO
categoria(id,nome) VALUES(1, 'Alimentos'),
(2, 'Higiêne'),
(3, 'Bebidas'),