Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

c0de

com Query

Recommended Posts

tenho uma tabela itens com os seguintes campos:CD_ITEM int,NM_ITEM varchar(30),DS_ITEM text,FL_SUBITEM int;com a seguinte lista de itens:1, Item, Primeiro Item, NULL2, Item, Segundo Item, NULL3, Item, Terceiro item, NULL4, Subitem, Primeiro Subitem do primeiro item, 15, Subitem, Segundo Subitem do primeiro item, 16, Item, Quarto item, NULLA minha questão é a seguinte:Gostaria de listar os subitens logo abaixo dos itens, tem como fazer uma query que me retorne tal lista?Até agora tenho a seguinte query:SELECT DISTINCT(tb1.ds_item)item FROM teste tb1 LEFT JOIN teste tb2 ON tb2.fl_subitem = tb1.cd_item ORDER BY tb1.cd_itemque me retorna:Primeiro ItemSegundo ItemTerceiro ItemPrimeiro Subitem do primeiro itemSegundo Subitem do primeiro itemQuarto itemMas gostaria que retornasse os Subitens logo abaixo do seu respectivo item. Alguém tem uma sugestão?Obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigão, Primeira questão:

Gostaria de listar os subitens logo abaixo dos itens, tem como fazer uma query que me retorne tal lista?

Como você tem um banco de dados RELACIONAL você não terá como fazer isso somente trabalhando no banco de dados, pois, caso o primeiro resultado seja de uma forma e os seguintes de outra forma, acabaos com o modelo relacional. O modelo relacional é composto por tabelas e relações, tabelas que contém linhas e colunas, no caso, o identificador do sub-item está na mesma linha do item, portanto, neste modelo, o sub-item retornará na mesma linha do ítem.Sua solução, se você puder trabalhar com alguma linguagem de programação como o PHP, seria usar iteração como o foreach() o qual lhe possibilitará ter uma regra como a seguinte: "Para cada ítem => pego todos os sub=ítens", podendo ter a idéia do recuo.No banco você pode fazer uma query com INNER JOIN para se livrar dos campos com elemntos nulos(NULL).Segunda questão:Mais uma vez, dentro do banco de dados você esbarra no modelo relacional. Caso você esteja desenvolvendo um sistema, você terá que montar seus artifícios para iterar dentre arrays.Você está desenvolvendo um sistema?Abração! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.