Label no Oracle

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
pc_delphi
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 128
Registrado em: Qui, 29 Mai 2008 6:44 pm
Localização: São Paulo
Tudo posso, nAquel que me fortalece
Filipenses 4:13

Como eu faço paracriar um label(acho que é isso), de forma quando eu der um select e o fetch de dados for muito grande, ele já venha mostrando no grid, os registros que forem sendo encontrados. Vi algo parecido assim:

Selecionar tudo

select  /*firs..não sei mais*/ campos from tabela
paulochagas
Moderador
Moderador
Mensagens: 86
Registrado em: Qua, 15 Mar 2006 2:46 pm
Localização: São Paulo - SP
Paulo Chagas Filho
__________________

Analista Funcional / Desenvolvedor Oracle EBS
MSN - paulochagas@hotmail.com
Gtalk - pachafi@gmail.com
Skype - paulochagas

Acho que seria um oracle hint que você deseja criar:
Segue um exemplo....

Selecionar tudo


SELECT /*+ FIRST_ROWS(10) */ employee_id, last_name, salary, job_id
  FROM employees
  WHERE department_id = 20;
paulochagas
Moderador
Moderador
Mensagens: 86
Registrado em: Qua, 15 Mar 2006 2:46 pm
Localização: São Paulo - SP
Paulo Chagas Filho
__________________

Analista Funcional / Desenvolvedor Oracle EBS
MSN - paulochagas@hotmail.com
Gtalk - pachafi@gmail.com
Skype - paulochagas

Tópico movido para SQL
jks1903
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 188
Registrado em: Qui, 04 Fev 2010 8:08 am

Aproveitando o tópico, apenas um esclarecimento.

Para que servem esses hints?

Esse código postado:

Selecionar tudo

SELECT /*+ FIRST_ROWS(10) */ employee_id, last_name, salary, job_id
  FROM employees
  WHERE department_id = 20; 
tem o mesmo resultado que esse?

Selecionar tudo

SELECT employee_id, last_name, salary, job_id
  FROM employees
  WHERE department_id = 20 AND ROWNUM <=10; 
Obrigado.
burga
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Qui, 26 Nov 2009 1:05 pm
Localização: SP
Ricardo H. Tajiri

Até onde eu consigo entender do FIRST_ROWS(n), ele é usado apenas pra dizer ao otimizador (CBO) que o resultado esperado pela consulta é de n registros. Assim o otimizador tenta criar o melhor plano pra este número de registros indicados. Mas não necessariamente ele vai retornar somente esses n registros. É só o plano de execução que pode mudar.

Já com o ROWNUM você sabe que o retorno vai ser igual ou menor do que o número indicado na condição.
jks1903
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 188
Registrado em: Qui, 04 Fev 2010 8:08 am

certo, entendi.

Obrigado.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 18 visitantes