Organizar cadastros em ordem alfabética
Alguém ai pode me dizer como organizar os cadastros de um DBGrid em ordem alfabética?
Valeu ae pessoal! :D
Valeu ae pessoal! :D
Richard
Curtidas 0
Respostas
Pinguço
31/01/2004
Também to precisando :).. Quem poder ajudar agradeceremos muito :)
GOSTEI 0
Drakkar
31/01/2004
É só colocar um ORDER BY no final da sua SQL da Query.
Exemplo:
SELECT * FROM CLIENTES ORDER BY NOME ASC
Assim vem em ordem alfabetica..
SELECT * FROM CLIENTES ORDER BY NOME DESC
Assim NÃO vem em ordem alfabetica..
Exemplo:
SELECT * FROM CLIENTES ORDER BY NOME ASC
Assim vem em ordem alfabetica..
SELECT * FROM CLIENTES ORDER BY NOME DESC
Assim NÃO vem em ordem alfabetica..
GOSTEI 0
Ltres
31/01/2004
Se vc estiver usando um TClientDataSet basta colocar o nome dos campos na propriedade IndexFieldNames.
Exp:
ClientDataSet1.IndexFieldNames := ´NOME´;
ou
ClientDataSet1.IndexFieldNames := ´NOME;SOBRNOME´;
Exp:
ClientDataSet1.IndexFieldNames := ´NOME´;
ou
ClientDataSet1.IndexFieldNames := ´NOME;SOBRNOME´;
GOSTEI 0
Dalton de
31/01/2004
Crie um Secondary index na construção da tabela com o campo desejado (no caso o nome).
no evento no on show do formulario que contém o dgrid, colocar:
procedure TForm1.OnShow(Sender:TOBject);
begin
TBNome.IndexName:=´INDNOME´;
end;
no evento on close colocar;
procedure TForm1.Onclose(Sender:TOBject);
begin
TBNome.IndexName:=´ ´;
end;
Obs.: INDNOME é nome do índice criado no data base desktop
no evento no on show do formulario que contém o dgrid, colocar:
procedure TForm1.OnShow(Sender:TOBject);
begin
TBNome.IndexName:=´INDNOME´;
end;
no evento on close colocar;
procedure TForm1.Onclose(Sender:TOBject);
begin
TBNome.IndexName:=´ ´;
end;
Obs.: INDNOME é nome do índice criado no data base desktop
GOSTEI 0
Carlosrm
31/01/2004
Richard e Pinguço,
complementando a msg do DrakkaR:
a cláusula Order By SEMPRE coloca a coluna (campo/field) do dataset em ordem alfabética (de acordo com a codificação ASCII).
A diferença entre informar ASC ou DESC é que:
ASC (crescente): ´Select * from Cadastros Order By Nome ASC´
Antonio
Batista
Carlos
...
Zebedeu
DESC (decrescente): ´Select * from Cadastros Order By Nome DESC´
Zebedeu
...
Carlos
Batista
Antonio
Se não for informado nem ASC e nem DESC, será assumido ASC.
Nesse mesmo fórum têm artigos, apostilas e exemplos de uso de SQL. Quem usa SQL só lamenta não ter começado antes.
carlosrm
complementando a msg do DrakkaR:
a cláusula Order By SEMPRE coloca a coluna (campo/field) do dataset em ordem alfabética (de acordo com a codificação ASCII).
A diferença entre informar ASC ou DESC é que:
ASC (crescente): ´Select * from Cadastros Order By Nome ASC´
Antonio
Batista
Carlos
...
Zebedeu
DESC (decrescente): ´Select * from Cadastros Order By Nome DESC´
Zebedeu
...
Carlos
Batista
Antonio
Se não for informado nem ASC e nem DESC, será assumido ASC.
Nesse mesmo fórum têm artigos, apostilas e exemplos de uso de SQL. Quem usa SQL só lamenta não ter começado antes.
carlosrm
GOSTEI 0