2009/5/18 Sidnei Vladisauskis <[email protected]>: > O problema é que acho que minha tabela não pode ser desse jeito... > > porque não tenho um produtos para várias lojas e sim um produto para cada > loja. > > imaginem assim, tenho os produtos: > tv lcd lg 29" na loja 1 > tv lcd lg 29" black piano na loja 2 > > o único detalhe que muda é a descrição... > > mas na hora do select quero trazer tv lcd 29" e em que loja tem isso > > +ou- como funciona o busca pé ou outro site do gênero. > > > 2009/5/18 Osvaldo Kussama <[email protected]> >> >> 2009/5/18 Lucas Souza <[email protected]>: >> > >> > >> > 2009/5/18 Sidnei Vladisauskis <[email protected]> >> >> >> >> Fala pessoal, >> >> >> >> Estou com uma dúvida conceitual para fazer um select >> >> >> >> Vamos lá: >> >> >> >> tenho uma tabela "produtos" onde tenho >> >> id >> >> name >> >> loja_id >> >> >> >> e tenho uma tabela loja onde tenho >> >> loja_id >> >> name >> >> >> >> >> >> Tenho produtos que possuem em duas lojas, por exemplo: >> >> tv lcd lg 29" >> >> >> >> ela está dentro de produtos duas vezes >> >> >> >> Tabela produtos >> >> | id | name | loja_id >> >> | 1 | tv lcd lg 29" | 1 >> >> | 2 | tv lcd lg 29" | 2 >> > >> > desta forma você esta replicando dados desnecessariamente, >> > >> > o correto seria uma 3º entidade para associar o produto a loja assim... >> > >> > (exemplo) tabela produto_relacao_loja >> > >> > loja_id (PK, FK) >> > produto_id (PK, FK) >> > estoque >> > preco >> > >> > >> >> >> >> >> >> Quando faço select * from produtos tenho todos os resultados. >> >> >> >> Como eu rotorno o seguinte? >> >> >> >> | name | lojas >> >> | tv lcd lg 29" | 1,2 >> >> >> >> Tem como? >> >> >> >> Se eu der group by name ele pede id tb, e ai dá na mesma... >> >> >> >> >> Além do excelente e apropriado conselho do Lucas você pode usar, >> especificamente para o select desejado, uma função de agregação. >> Veja o exemplo array_accum em: >> http://www.postgresql.org/docs/current/interactive/xaggr.html >>
Se isto for mesmo verdade eu diria que este é um caso único e sui-generis de rede de lojas. Imagine por ex. a livraria Saraiva em que cada loja da rede tivesse seus próprios livros e que cada um deles não estivesse a venda em nenhuma outra loja da rede. Me parece muito estranho e fora da realidade. Dê uma revisada em seu modelo conceitual de dados e leia um pouco sobre normalização. Pode começar por aqui: http://pt.wikipedia.org/wiki/Normaliza%C3%A7%C3%A3o_de_dados Osvaldo _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
