Ajuda em Pesquisa SQL
04/08/2004
0
Preciso fazer uma consulta em um campo string. Até aí tudo bem, só que preciso da quantidade de registros que não atendem a esta consulta e que estão posicionados anteriormente ao resultado desta consulta. Calma, calma... tá parecendo muito complicado, mas vou exemplificar...
Suponhamos que temos uma tabela com dois campos:
CODTAB integer PK
DESTAB varchar(20)
O conteúdo desta tabela:
CODTAB - DESTAB 3 - ANDRE 5 - CARLOS 1 - FABIO 2 - JOSE 4 - MARIO 6 - PEDRO
Como podem ver, a tabela está ordenada por ordem de DESTAB... Quando executo a seguinte instrução:
SELECT * FROM TABELA WHERE DESTAB LIKE ´M¬´
É retornado apenas o registro 4 - MARIO... O que preciso é saber quantos registros existem antes deste registro que esta consulta me retornou...
Testei e queria que existisse algum meio de fazer algo similar a isto:
SELECT COUNT(*) FROM TABELA WHERE DESTAB < ´M¬´
Será que existe alguma solução para isto???
Ffsombra
Posts
04/08/2004
Welington
SELECT COUNT(*) FROM TABELA WHERE NOT (DESTAB LIKE ´M¬´)
Eu testei este código e funcionou
04/08/2004
Motta
SELECT *
FROM TABELA WHERE NOME < ´MARIO´
ACHO QUE FUNCIONA, PORÉM DEPENDE DA FORMA COMO O BD TRATA STRINGS, DEMANDA UMA PESQUISA NO ´MANUEL´
05/08/2004
Emerson Nascimento
select count(destab) from TABELA where destab < ´M´
a condição da busca é o mesmo conteúdo que você solicitou na pesquisa princípal sem o curinga (¬)
06/08/2004
Ffsombra
Obrigado Motta e Welington!!!
Clique aqui para fazer login e interagir na Comunidade :)