Ir ao conteúdo

Access (Consulta SQL) Resultado incorreto com mais registros.


Ir à solução Resolvido por Midori,

Posts recomendados

Postado

Tenho que buscar registros da tabela com base na coluna PINYIN e numa linha específica do grupo da coluna TN.

 

Por exemplo, neste screen tenho que buscar o registro NI (coluna PINYIN) da segunda linha do grupo da coluna TN = 3.

 

tabela.png.4e463d8e895c15305f7fd4ab6bf1571b.png

 

Para isso usei este comando SQL,

 

SELECT TOP 1 *  FROM (SELECT TOP 1 * FROM (SELECT  TOP 2 * FROM CHTABLE  WHERE PINYIN='NI' AND TN=3) ORDER BY PINYIN DESC)

 

Deu certo neste caso, mas quando tenho registros que estão em posições maiores (do grupo TN) retorna o resultado errado.

 

Qual é a melhor forma de resolver isso? Em resumo, tenho que criar a consulta com o critério do campo PINYIN e informar a posição/linha do registro com base no valor do campo TN.

Postado

@Basole  Como Max poderia ser aplicada nesse caso? Os valores do campo TN vão de 0 a 4 e se repetem em outras linhas. Talvez o caminho seja um comando com Group by e Top, mas não consegui.

  • Solução
Postado

Resolvi no VB com a função MoveLast de Recordset, assim só um Top é necessário, p.ex: "SELECT TOP 2 * FROM CHTABLE WHERE PINYIN='NI' AND TN=3"

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!