18/12/2005

Distinct e ALL

Gente ja olhei varios tópicos mais naum consegui fazer o seguinte tenho uma tabela com os seguintes campos

COD
SETOR
NOME

tenho varios registro com o SETOR IGUAL, dai usei SELECT DISTINCT SETOR FROM TABELA, beleza ele me deu so um de cada , so que eu quere que ele me de as informações completas tipo assim.

select distinct setor,nome from tabela, dai ele mostra o registro completo so que dai ele torna a me mostrar os registros que tem setor repetidos, como posso pegar e mostrar as informações completas fazendo com que o DISTINC so tenha efeito so o campo SETOR???


Digital_man

Respostas

19/12/2005

Marcio.theis

Quais são os campos que vc deseja que aparecam no SQL ??? Pois se colocar o COD no distinct, certamente ira trazer todos os registros...


Responder Citar

19/12/2005

Digital_man

[quote:3fc41bc8fe=´/]/]@t´]Quais são os campos que vc deseja que aparecam no SQL ??? Pois se colocar o COD no distinct, certamente ira trazer todos os registros...[/quote:3fc41bc8fe]

Mais meu amigo eu preciso que ele me tire os setores repetidos por isso tem que ser por setor, mais quero poder visualizar o restante das informações do registro.!


Responder Citar

19/12/2005

Martins

Nobre colega, acredito q usando a palavra chave [b:c9e34e2c79]DISTINCT[/b:c9e34e2c79] seja meio complicado fazer da forma q vc quer, pq [b:c9e34e2c79]DISTINCT[/b:c9e34e2c79] remove as linhas duplicadas.

ex:
COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0002 URBANIZAÇÃO     FULANO DE TAL 2
0003 TRANSPORTES      FULANO DE TAL 3
0004 TRANSPORTES      FULANO DE TAL 4
0005 ADMINISTRAÇÃO  FULANO DE TAL 5
0006 ADMINSITRAÇÃO  FULANO DE TAL 6



Após o Distinct, no caso Select Distinct Setor, Nome, etc..., deverá ficar assim:

COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0003 TRANSPORTES      FULANO DE TAL 3
0005 ADMINISTRAÇÃO  FULANO DE TAL 5


Quais são exatamente os dados que devem ser mostrados?


Responder Citar

19/12/2005

Digital_man

Nobre colega, acredito q usando a palavra chave [b:7e674d1a5f]DISTINCT[/b:7e674d1a5f] seja meio complicado fazer da forma q vc quer, pq [b:7e674d1a5f]DISTINCT[/b:7e674d1a5f] remove as linhas duplicadas. ex:
COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0002 URBANIZAÇÃO     FULANO DE TAL 2
0003 TRANSPORTES      FULANO DE TAL 3
0004 TRANSPORTES      FULANO DE TAL 4
0005 ADMINISTRAÇÃO  FULANO DE TAL 5
0006 ADMINSITRAÇÃO  FULANO DE TAL 6

Após o Distinct, no caso Select Distinct Setor, Nome, etc..., deverá ficar assim:
COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0003 TRANSPORTES      FULANO DE TAL 3
0005 ADMINISTRAÇÃO  FULANO DE TAL 5
Quais são exatamente os dados que devem ser mostrados?




Certo vc chegou onde eu queria, quando dou o select com distinc realmente ele tira as duplicações so que ele so me mostra o setor tipo assim.
[b:7e674d1a5f]DISTINCT[/b:7e674d1a5f] seja meio complicado fazer da forma q vc quer, pq [b:7e674d1a5f]DISTINCT[/b:7e674d1a5f] remove as linhas duplicadas.

ex:
COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0002 URBANIZAÇÃO     FULANO DE TAL 2
0003 TRANSPORTES      FULANO DE TAL 3
0004 TRANSPORTES      FULANO DE TAL 4
0005 ADMINISTRAÇÃO  FULANO DE TAL 5
0006 ADMINSITRAÇÃO  FULANO DE TAL 6



Após o Distinct, no caso Select Distinct Setor, Nome, etc..., deverá ficar assim:

[code]
COD SETOR
---------------------------
0001 01
0003 02
0005 03

Estou dando [b:7e674d1a5f]select distinct setor from tabela[/b:7e674d1a5f]. minha tabela e formada da seguinte maneira

cod setor nome
01 01 centro
02 03 saudade

so que depois do distinct ele so mostra isso
setor
01
03

se eu por [b:7e674d1a5f]select distinct setor,nome from tabela[/b:7e674d1a5f] o distinct me traz arquivos repetidos.
deu pra sacar , não quero os repetidos mais quero que ele me traga a informações completa dos naum repetidos com todos os campos.


Responder Citar

22/12/2005

Digital_man

[quote:90e1728fce=´Martins´]Nobre colega, acredito q usando a palavra chave [b:90e1728fce]DISTINCT[/b:90e1728fce] seja meio complicado fazer da forma q vc quer, pq [b:90e1728fce]DISTINCT[/b:90e1728fce] remove as linhas duplicadas. ex:
COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0002 URBANIZAÇÃO     FULANO DE TAL 2
0003 TRANSPORTES      FULANO DE TAL 3
0004 TRANSPORTES      FULANO DE TAL 4
0005 ADMINISTRAÇÃO  FULANO DE TAL 5
0006 ADMINSITRAÇÃO  FULANO DE TAL 6

Após o Distinct, no caso Select Distinct Setor, Nome, etc..., deverá ficar assim:
COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0003 TRANSPORTES      FULANO DE TAL 3
0005 ADMINISTRAÇÃO  FULANO DE TAL 5
Quais são exatamente os dados que devem ser mostrados?




Certo vc chegou onde eu queria, quando dou o select com distinc realmente ele tira as duplicações so que ele so me mostra o setor tipo assim.
[b:90e1728fce]DISTINCT[/b:90e1728fce] seja meio complicado fazer da forma q vc quer, pq [b:90e1728fce]DISTINCT[/b:90e1728fce] remove as linhas duplicadas.

ex:
COD  SETOR              NOME
-------------------------------------------------------
0001 URBANIZAÇÃO     FULANO DE TAL 1
0002 URBANIZAÇÃO     FULANO DE TAL 2
0003 TRANSPORTES      FULANO DE TAL 3
0004 TRANSPORTES      FULANO DE TAL 4
0005 ADMINISTRAÇÃO  FULANO DE TAL 5
0006 ADMINSITRAÇÃO  FULANO DE TAL 6



Após o Distinct, no caso Select Distinct Setor, Nome, etc..., deverá ficar assim:

[code]
COD SETOR
---------------------------
0001 01
0003 02
0005 03

Estou dando [b:90e1728fce]select distinct setor from tabela[/b:90e1728fce]. minha tabela e formada da seguinte maneira

cod setor nome
01 01 centro
02 03 saudade

so que depois do distinct ele so mostra isso
setor
01
03

se eu por [b:90e1728fce]select distinct setor,nome from tabela[/b:90e1728fce] o distinct me traz arquivos repetidos.
deu pra sacar , não quero os repetidos mais quero que ele me traga a informações completa dos naum repetidos com todos os campos.[/quote:90e1728fce]

Aqui vai novamente eu tinha escrito errado, aguardo respostas.


Responder Citar

22/12/2005

Martins

Deveria funcionar exatamente como exemplificado, queira verificar se não existem campos q fazem a instrução entender q os dados são distintos.

Ex:

SETOR              NOME 
------------------------------------------------------- 
URBANIZAÇÃO     FULANO DE TAL 1 
URBANIZAÇÃO     FULANO DE TAL 1 
TRANSPORTES      FULANO DE TAL 3 
TRANSPORTES      FULANO DE TAL 4 
ADMINISTRAÇÃO  FULANO DE TAL 5 
ADMINSITRAÇÃO  FULANO DE TAL 5 


Retorno
PS: Corrigindo alguns posts anteriores.
Ex:

SETOR              NOME 
------------------------------------------------ 
URBANIZAÇÃO     FULANO DE TAL 1 
TRANSPORTES      FULANO DE TAL 3 
TRANSPORTES      FULANO DE TAL 4 
ADMINSITRAÇÃO  FULANO DE TAL 5 


veja q Setor (TRANSPORTES) é repetido mas Nome não.

Desconsiderar os exemplos anteriores, por favor, pois o campo código é diferente o q forçaria o retorno de todos os campos tb.

verifique se não existem situãção semelhantes em sua tabela.


Responder Citar

23/12/2005

Digital_man

Deveria funcionar exatamente como exemplificado, queira verificar se não existem campos q fazem a instrução entender q os dados são distintos. Ex:
SETOR              NOME 
------------------------------------------------------- 
URBANIZAÇÃO     FULANO DE TAL 1 
URBANIZAÇÃO     FULANO DE TAL 1 
TRANSPORTES      FULANO DE TAL 3 
TRANSPORTES      FULANO DE TAL 4 
ADMINISTRAÇÃO  FULANO DE TAL 5 
ADMINSITRAÇÃO  FULANO DE TAL 5 
Retorno PS: Corrigindo alguns posts anteriores. Ex:
SETOR              NOME 
------------------------------------------------ 
URBANIZAÇÃO     FULANO DE TAL 1 
TRANSPORTES      FULANO DE TAL 3 
TRANSPORTES      FULANO DE TAL 4 
ADMINSITRAÇÃO  FULANO DE TAL 5 
veja q Setor (TRANSPORTES) é repetido mas Nome não. Desconsiderar os exemplos anteriores, por favor, pois o campo código é diferente o q forçaria o retorno de todos os campos tb. verifique se não existem situãção semelhantes em sua tabela.



Beleza so q o problema e que o meu setor e CODIGO, tenho os campos COD > NUMERICO, SETOR > NUMERICO, NOME > TEXTO.
Entendeu? naum e texto.!!


Responder Citar

23/12/2005

Martins

Certo, mostre aqui parte da sequencia q está repetida e q não deveria está, deixe-nos ver por favor.

valew!!!


Responder Citar

23/12/2005

Digital_man

Certo, mostre aqui parte da sequencia q está repetida e q não deveria está, deixe-nos ver por favor. valew!!!


Olha deixa eu explicar o meu banco e Firebird 1.5 - Delphi 7.

Meu banco e o seguinte

COD < NUMERICO | SETOR < NUMERICO | NOME < TEXTO.

COMO MEU BANCO ESTA , ESSA INFORMAÇÃO E REAL.

COD SETOR NOME
01 20 SEFIN
02 30 SEMAS
03 40 OBRAS
04 20 SEFIN < ESTE AQUI E REPETIDO

Quando uso na query [b:2d2ad139ca]select distinct setor from tabela;[/b:2d2ad139ca]

Ele me retorna em um Dbgrid a seguinte informação.

SETOR
20
30
40
O REPETIDO QUE EXISTE ELE NAUM MOSTRA. SO QUE NAUM QUERO SO A INFORMAÇÃO DO SETOR, DEPOIS DE USAR O MEMSO SELECT QUERO A SEGUINTE INFORMAÇÃO NO DBGRID.
QUERO ASSIM

COD SETOR NOME
01 20 SEFIN
02 30 SEMAS
03 40 OBRAS

SEM O REPETIDO MAIS ME MOSTRANDO TUDO NA DBGRID.

TENTEI USAR ASSIM [b:2d2ad139ca] SELECT DISTINCT SETOR,NOME FROM TABELA;[/b:2d2ad139ca]

dai ele me mostra setor e nome so que naum tira os repetidos.






[/b]


Responder Citar

23/12/2005

Digital_man

Ai galera de tanto tentar acertei, mais agradeço a ajuda de todos e aqui vai o codigo para alguem tb acertar se naum souber.


select distinct(setor),nome, descricao from tabela;

Valew. :D


Responder Citar

23/12/2005

Martins

Ai galera de tanto tentar acertei, mais agradeço a ajuda de todos e aqui vai o codigo para alguem tb acertar se naum souber. select distinct(setor),nome, descricao from tabela; Valew. :D


Parabens!!!!


Responder Citar