Ir para conteúdo

POWERED BY:

Arquivado

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

fabiosc80

Não deixar aparecer dois arquivos de mesmo nome.

Recommended Posts

Tenho um sistema que mostra arquivos para download e a pessoa pode selecionar a categoria e / ou ano.

 

Porêm quando tem o mesmo arquivo em duas categorias diferentes ele mostra o arquivo duplicado.

 

Como faço isso?

 

olha meu select, o banco é access:

 

 

<%set anoStr=conn.EXECUTE("SELECT DISTINCT Year(tbArquivos.data) as ano FROM tbNoticia INNER JOIN (tbArquivos INNER JOIN tbArquivosVinculados ON tbArquivos.id = tbArquivosVinculados.id_arquivo) ON (tbNoticia.id = tbArquivosVinculados.id_noticia) WHERE tbNoticia.tipo="&tipo&" and Year(tbArquivos.data)<>"&ano&"  order by Year(tbArquivos.data) DESC")%>

 

Porem o nome do campo que guarda o nome do arquivo é "NOMEARQUIVO"

 

ele esta na tabela "TBARQUIVOS"

 

Tentei usar outro distinct mas não funcionou,, não sei se coloquei errada a sintaxe.

Compartilhar este post


Link para o post
Compartilhar em outros sites

usando inner join você não vai conseguir usar o distinct como deseja. Só não entendi porque está errado aparecer dois se estão em categorias diferentes então são dois arquvos diferentes para download. Se aparecesse somente 1, como ficaria o link, como saberia qual download deve ser feito? Não teria que colocar no seu WHERE a categoria?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pq você nao tenta um codigo burru???ao invés do sql, faiz um select normal!joga tudo pra um array, e dentro do while que monta o array você testa se ja existe ou nao o nome..talvez possa trazer uma leve lentidao, dependendo daquantidade de dados que você esta trabalhando...mais qndo nao axo saidas faço isso..abrass

Compartilhar este post


Link para o post
Compartilhar em outros sites

Jonathan,É o mesmo arquivo só que em categorias deiferentes.

usando inner join você não vai conseguir usar o distinct como deseja. Só não entendi porque está errado aparecer dois se estão em categorias diferentes então são dois arquvos diferentes para download. Se aparecesse somente 1, como ficaria o link, como saberia qual download deve ser feito? Não teria que colocar no seu WHERE a categoria?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ah...entendi....bom, você pode tentar um esquema no momento de exibir

if not anoStr.eof thendo while not anoStr.eofif (var = "") or (var<>anoStr("ano")) thenresponse.write(anoStr("ano"))var = anoStr("ano")end ifanoStr.movenextloopelseresponse.write("nenhum download")end if

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.