Ir para conteúdo

POWERED BY:

Arquivado

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

leozeferino

SELECT DISTINCT

Recommended Posts

Olá.

 

Estou fazendo um site em que preciso pegar vários valores de uma tabela. Porém, no campo "nome" não posso pegar nomes iguais.

 

Exemplo:

 

TABELA

Nome Email Cidade

Lulu lulu@nome.com.br São Paulo

Lulu luroca@nome.com.br São Paulo

Gigi gigi@nome.com.br Rio de Janeiro

 

Gostaria de pegar nomes distintos porém também os campos "Email" e "Cidade".

 

Exemplo

Lulu lulu@nome.com.br São Paulo

Gigi gigi@nome.com.br Rio de Janeiro

 

 

Quando eu quero nomes distintos SOMENTE eu coloco

ASP

[*] sql "select DISTINCT Nome FROM Tabela" 

 

Agora, como eu faço para pegar "DISTINCT Nome" e os campos "Email" e "Cidade" de cada registro? Tentei colocar os campos junto com o campo "Nome" e não deu certo.

 

Desde já,

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce pode utilizar o Select com Group By da seguinte forma:

 

Select Nome , Email ,Cidade from TABELA Group by Nome, Email , Cidade

 

Isso ira trazer agrupado pelos 3 campos acima, pode usar o distinct + group by

 

Select Distinct Nome , Email ,Cidade from TABELA Group by Nome, Email , Cidade

 

Faz esse teste e veja no que da...

 

 

Saulo

 

Olá.

 

Estou fazendo um site em que preciso pegar vários valores de uma tabela. Porém, no campo "nome" não posso pegar nomes iguais.

 

Exemplo:

 

TABELA

Nome        Email                        Cidade

Lulu        lulu@nome.com.br        São Paulo

Lulu        luroca@nome.com.br    São Paulo

Gigi        gigi@nome.com.br        Rio de Janeiro

 

Gostaria de pegar nomes distintos porém também os campos "Email" e "Cidade".

 

Exemplo

Lulu        lulu@nome.com.br        São Paulo

Gigi        gigi@nome.com.br        Rio de Janeiro

 

 

Quando eu quero nomes distintos SOMENTE eu coloco

ASP

[*] sql "select DISTINCT Nome FROM Tabela" 

 

Agora, como eu faço para pegar "DISTINCT Nome" e os campos "Email" e "Cidade" de cada registro? Tentei colocar os campos junto com o campo "Nome" e não deu certo.

 

Desde já,

 

Obrigado.

<{POST_SNAPBACK}>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Voce pode utilizar o Select com Group By da seguinte forma:

 

Select Nome , Email ,Cidade from TABELA Group by Nome, Email , Cidade

 

Isso ira trazer agrupado pelos 3 campos acima, pode usar o distinct + group by

 

Select Distinct Nome , Email ,Cidade from TABELA Group by Nome, Email , Cidade

 

Faz esse teste e veja no que da...

 

 

Saulo

<{POST_SNAPBACK}>

Kra, num sei se não deu certo ou se eu não entendi mesmo.

 

A linha que estou utilizando é a seguinte:

ASP

[*]SQL="SELECT Distinct Nome, Imagem, Site FROM TABELA Group by Nome, Imagem, Site WHERE Imagem<>'breve' ORDER BY Nome ASC"

 

[*]

 

Porém ocorre o seguinte erro:

Erro de sintaxe (operador faltando) na expressão de consulta 'Site WHERE Imagem<>'breve''.
Você sabe o que pode estar acontecendo de errado?

 

Desde já,

 

Valewss!

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara antes de passar um codigo gostaria de saber o que quer como retornose tiver 6 registrosNOME EMAIL CIDADEMario mario@mario.com BelemMario mario@gmail.com BelemAew aew@aew.net Aew do SulAew aew.aew@superaew.com.br Aew do NorteAhuahu AhuahuAhuahuAhuahu@AhuahuAhuahu.com AhuahuAhuahu Ahuahu@Ahuahu.com.br Ahuahuo que voce quer que retorne???

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara antes de passar um codigo gostaria de saber o que quer como retorno

 

se tiver 6 registros

 

NOME EMAIL CIDADE

Mario mario@mario.com Belem

Mario mario@gmail.com Belem

Aew aew@aew.net Aew do Sul

Aew aew.aew@superaew.com.br Aew do Norte

Ahuahu AhuahuAhuahuAhuahu@AhuahuAhuahu.com Ahuahu

Ahuahu Ahuahu@Ahuahu.com.br Ahuahu

 

o que voce quer que retorne???

<{POST_SNAPBACK}>

Fala cara. Blza?

 

Então, desta sua tabela eu vou querer que retorne os 3 campos mas somente dos registros que tem "Nome" diferentes.

Desta sua tabela eu iria querer que selecionasse:

 

Mario mario@mario.com Belem

Aew aew@aew.net Aew do Sul

Ahuahu AhuahuAhuahuAhuahu@AhuahuAhuahu.com Ahuahu

 

Vê se consegue entender.

 

Desde já,

 

Valewsss!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara... eu tentei meia hora aqui fazer o que você queria, tentei todas as cláusulas possíveis... Mas não consegui...

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem tiozinho tb não consegui montar um SELECT que faça isso na buchamas voce pode fazer dois selects e ter o resultado desejadoSELECT DISTINCT NOME FROM TABELAaqui faz um loop nos resultados e seleciona uma unica ocorrencia com os outros dadostipo assimSET RS.Execute("SELECT DISTINCT NOME FROM TABELA")WHILE NOT RS.EOF SET RS2.Execute("SELECT TOP 1 EMAIL,CIDADE FROM TABELA WHERE NOME = '" & RS("NOME") & "'")WENDRS.CloseSET RS = Nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala kra. Blza??Então, passei o código pra página e rodou, mas ficou MUITOO lento!! Inviavel!Bom, vou continuar tentando fazer um código que de certo. Valews pela ajuda.Se mais alguém tiver alguma sugestão...Valewss!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

realmente fiz algumas tentativas e não funcionou como voce queria

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.