Usuário com melhor resposta
option (fast 10) - como utilizar corretamente

Pergunta
-
Pessoal, bom dia.
Ao usarmos o option ( fast 10 ) em uma query indicamos ao sql para ele retornar estes 10 primeiros registros mais rapidamente porém não estou conseguindo entender como usar isso na prática para conseguir carregar estes dados.
NO management studio isso funcionaria pois eu tenho acesso aos 10 registros até que os demais carreguem, mas em uma aplicação, como é possível ler estes 10 itens se a conexão ainda não foi encerrada ?
Se eu criar uma página em .net por exemplo, por padrão mesmo que os 10 primeiros retornem antes, a página só vai emitir os resultados quando tudo for finalizado.
Como vocês utilizam isso na prática ?Outra perguntinha.. usar isso junto com um select top 10 faria eu ter os 10 primeiros registros mais rapidamente ? Acho que nada a ver né ...
Respostas
-
Rafael,
Veja se estes posts ajudam:
http://www.sql-server-performance.com/forum/threads/fast-option.16004/
http://www.sql-server-performance.com/forum/threads/how-to-use-option-fast-n.14982/
http://technet.microsoft.com/en-us/library/ms181714.aspx
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
- Marcado como Resposta Rafael Metring quarta-feira, 26 de fevereiro de 2014 11:45
-
Rafael,
Você só vai ver alguma diferença em grandes volume de dados que devem ser retornados ou com uma quantidade grande de JOINs, mesmo assim isto vai variar apenas nos primeiros registros retornados pela sua consulta.
O SQL Server sempre vai privilegiar às condições da consulta (e o plano de execução criado para ele).
Para maiores informações, veja este artigo no Blog MSDN:
http://blogs.msdn.com/b/queryoptteam/archive/2006/03/30/564912.aspx
Não esqueça de marcar como resposta todos os posts que ajudaram na solução !
Abraços,
Durval RamosMicrosoft Partner | MTA - SQL Server 2012---------------------------------- Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"- Marcado como Resposta Rafael Metring quarta-feira, 26 de fevereiro de 2014 11:45
Todas as Respostas
-
Rafael,
Veja se estes posts ajudam:
http://www.sql-server-performance.com/forum/threads/fast-option.16004/
http://www.sql-server-performance.com/forum/threads/how-to-use-option-fast-n.14982/
http://technet.microsoft.com/en-us/library/ms181714.aspx
Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
- Marcado como Resposta Rafael Metring quarta-feira, 26 de fevereiro de 2014 11:45
-
Pedro,
Obrigado pelo retorno mas não consegui encontrar a resposta para meu problema.
Independente do que ou como , o asp.net sempre só vai retornar ao usuário quando a query for finalizada e é isso que eu não sei como trabalhar..
Pensando bem eu acho que minha pergunta está no fórum errado.. Acho que eu terei que ver é no forum de .net como carregar isso em partes, estou certo ? -
Rafael, acredito que o que voce quer fazer não vai funcionar como deseja, o resultado só vai aparecer na sua aplicação quando o SQL terminar de enviar todo o resultado, acho que na sua aplicação é que voce terá que separar em paginas de quantas deseja.
Alexandre Matayosi Conde Mauricio.
-
-
Rafael,
Você só vai ver alguma diferença em grandes volume de dados que devem ser retornados ou com uma quantidade grande de JOINs, mesmo assim isto vai variar apenas nos primeiros registros retornados pela sua consulta.
O SQL Server sempre vai privilegiar às condições da consulta (e o plano de execução criado para ele).
Para maiores informações, veja este artigo no Blog MSDN:
http://blogs.msdn.com/b/queryoptteam/archive/2006/03/30/564912.aspx
Não esqueça de marcar como resposta todos os posts que ajudaram na solução !
Abraços,
Durval RamosMicrosoft Partner | MTA - SQL Server 2012---------------------------------- Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"- Marcado como Resposta Rafael Metring quarta-feira, 26 de fevereiro de 2014 11:45