Selecionar 10 primeiros registros em uma consulta SQL

Delphi

15/03/2005

gostaria de saber como eu faço para que eu exiba os 10 primeiros registros de uma seleção, eu me esqueci desse comando...

agradecendo desde já

Tiago Zaniquelli


Piaum3

Piaum3

Curtidas 1

Melhor post

Emerson Nascimento

Emerson Nascimento

15/03/2005

SQL Server:
Select top X * from tabela

Oracle:
Select * from tabela
Rowcount X

MySQL
Select * from tabela
limit X

Firebird
Select First X * from tabela

onde X é o número de registros que se deseja retornar


GOSTEI 2

Mais Respostas

Tnaires

Tnaires

15/03/2005

Olá
Qual o banco q vc usa?
No SQL Server, por exemplo, vc pode usar a cláusula TOP.
SELECT TOP 10 * FROM Tabela

Abraços


GOSTEI 1
Piaum3

Piaum3

15/03/2005

estou utilizando o MYSQL


GOSTEI 1
Tnaires

Tnaires

15/03/2005

Se não me engano, no MySQL vc usa o LIMIT.
SELECT * FROM Tabela LIMIT 10;

Abraços


GOSTEI 1
Eniorm

Eniorm

15/03/2005

Existe algum esquema para limitar o select nos bancos Firebird ou Interbase?


GOSTEI 1
Fred

Fred

15/03/2005

Boa Pergunta Enio!! e no Firebird/Interbase??? Alguem Sabe?? :?


GOSTEI 1
Gandalf.nho

Gandalf.nho

15/03/2005

[quote:c87db01af1=´Enio Marconcini´]Existe algum esquema para limitar o select nos bancos Firebird ou Interbase?[/quote:c87db01af1]

No IB 6.5 e superior usa-se ROWS e no FB 1.5 FIRST


GOSTEI 1
Faelcavalcanti

Faelcavalcanti

15/03/2005

Que eu me lembre, no SQL Server tinha a função [b:f88a671ee5]ROWCOUNT[/b:f88a671ee5], em que indicava tipow [b:f88a671ee5]SET ROWCOUNT 10[/b:f88a671ee5]. Não sei se para o Interbase/Firebird é o mesmo, só olhando na documentação com mais calma.


GOSTEI 0
Douglas Maeda

Douglas Maeda

15/03/2005

Boa tarde pessoal,

aproveitando esse poste que esta nota 10! resolveu uma parte do meu problema, executando o comando "TOP"..
mas qual seria o comando ou query para que eu nao traga registro duplicado..

Query:
SELECT TOP(6) * FROM [MON_RTN].[dbo].[TB_PNL_CANAIS_V3]
where data > '2018-08-30' and canal in ('IBC','AA','TECBAN','ELO_NOVO','MAESTRO','VISA')


Resultado:
2018-08-30 16:16:02.000 IBC 1900-01-01 00:00:00.000
2018-08-30 16:18:01.000 TECBAN 1900-01-01 00:00:00.000
2018-08-30 16:18:05.000 ELO_NOVO 1900-01-01 00:00:00.000
2018-08-30 16:18:08.000 MAESTRO 1900-01-01 00:00:00.000
2018-08-30 16:18:10.000 VISA 1900-01-01 00:00:00.000
2018-08-30 16:21:01.000 TECBAN 1900-01-01 00:00:00.000

Observem q esta trazendo apenas 6 registros, blz, mas trazendo dois registros TECBAN, que nao deveria, gostaria que nao trouxesse duplicidade.. (que é a da coluna "CANAL".

quem puder me ajudar agradeco.

Douglas
GOSTEI 0
Alex Lekao

Alex Lekao

15/03/2005

Ola Douglas, bom dia!!!

Experimente utilizar o Distinct, deve funcionar.

Atenciosamente,
GOSTEI 0
Wanderson Torrezan

Wanderson Torrezan

15/03/2005

se voce usar o * nao vai conseguir tirar a duplicidade nem com distinct.. <br />
<br />
os dois registros TECBAN tem horário diferente <br />
2018-08-30 16:18:01.000 TECBAN 1900-01-01 00:00:00.000<br />
2018-08-30 16:21:01.000 TECBAN 1900-01-01 00:00:00.000<br />
<br />
nesse caso voce teria que excluir essa coluna que gera diferenciação. Se for uma coluna só com "timestamp" voce pode usar alguma função para selecionar somente a data, e não a hora e usar o DISTINCT tbem.<br />
<br />
Isso resoverá seu problema
GOSTEI 0
POSTAR