Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala galera! Firme?
To com um problema aki faz um bom tempo e não consigo resolver de forma alguma!!!! Ta OSSSOOOOOO!!! uhauhahuhuA
Seguinte: To tentando fazer uma paginação de dados no SQL Server. Ela tem que me retornar de 20 em 20 registros (por exemplo).
Eu consegui fazer, mas quando insiro qualquer parâmetro de busca, aí não rola mais! Alguém sabe o motivo? http://forum.imasters.com.br/public/style_emoticons/default/upset.gif
Assim ela funciona:
SELECT TOP 20 idFuncionario,prontuario,nome,areaFROM funcionariosWHERE idFuncionario NOT IN (SELECT TOP 0 idFuncionario FROM funcionarios)
Assim não:
SELECT TOP 20 idFuncionario,prontuario,nome,areaFROM funcionariosWHERE nome LIKE '%jose%' AND idFuncionario NOT IN (SELECT TOP 0 idFuncionario FROM funcionarios)Sendo mais claro:Das duas formas funciona. O que acontece é que quando insiro uma cláusula WHERE, ele sempre trás os 20 primeiros! Não importa a quantidade que eu coloque no 2º SELECT TOP.
ALguém me dá um help por favor ae galera! :rolleyes:
ABRAX!!
Sim.... eu já tentei as duas formas!
Eu uso o SQL 2005, e a PROC pra ele (a que tem o ROW_NUMBER()) não funciona! Da um erro de que essa função não existe! Tem que habilitar ela de alguma forma? Não sei...
Bom... a PROC para o 2000 funcionou, porém dá o mesmo erro que eu disse antes! É só eu jogar um WHERE q não funciona mais...
Só que assim.... não sei se estou fazendo errado! Eu passo minha query todinha via parâmetro! Fica assim:
EXECUTE paginaDados 0,20,'SELECT prontuario,nome,area FROM funcionarios'
Funciona! Só da meleca na hora de passar o WHERE! assim:
EXECUTE paginaDados 0,20,'SELECT prontuario,nome,area FROM funcionarios WHERE nome LIKE ''%rafael%'''
Valew!!!!
Galera, alguém pode me ajudar por favor?
Fala galera! Firme?
Bom...... CONSEGUI RESOLVER!!!!!!!!!!! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
O que precisei fazer foi só colocar a cláusula WHERE também no 2º SELECT! Ficou assim:
SELECT TOP 20 idFuncionario,prontuario,nome,areaFROM funcionariosWHERE nome LIKE '%jose%' AND idFuncionario NOT IN (SELECT TOP 40 idFuncionario FROM funcionarios WHERE nome LIKE '%jose%')
Valew ae!!
neste tópico tem exemplos de paginação de uma outra forma: http://forum.imasters.com.br/index.php?showtopic=246343
talvez ajude
t+