Usuário com melhor resposta
Consultar à partir do segundo registro

Pergunta
-
Ola!
Estou fazendo uma query onde quero consultar apenas à partir do Segundo registro; tentei fazer com rownumber mas não deu certo...
Quero fazer isso porque estou trabalhando com BulkInsert em uma coluna String, mas ele está me trazendo o cabeçalho que está no primeiro registro.
Alguem pode me ajudar?
Respostas
-
Tente utilizar "rownumber" mas, como apenas como resultado da subconsulta e não da consulta principal, como abaixo:
select * from (select ROW_NUMBER() over (order by id) as RowNum, * from minha_tabela) as MT where MT.RowNum > 1
Não sei se é a solução mais elegante, mas acho que vale a pena tentar ;)
Abs
Alexandre Felipe Malavasi Cardoso
- Editado Alexandre F. Malavasi Cardoso sexta-feira, 19 de julho de 2013 03:37 Complementação
- Sugerido como Resposta Junior Galvão - MVPMVP quinta-feira, 18 de fevereiro de 2016 18:06
- Marcado como Resposta Marcos SJ sexta-feira, 19 de fevereiro de 2016 11:17
-
Qual versão que você está utilizando no SQL Server?
Se você estiver usando o SQL Server 2012 utilize o "OFFSET":
SELECT * FROM MinhaTabela ORDER BY Campo OFFSET 1 ROWS
Importante lembrar que ao utilizar a função OFFSET, você precisa utilizar a cláusula ORDER BY.
Se você estiver utilizando uma versão inferior ao 2012 (2008R2 até o 2005), a query que o Alexandre Felipe mandou funcionará perfeitamente.
Abs.
Alan Machado da Silva Lima -- Blog: http://onlywhatmatters.wordpress.com/ E-mail: amachado.slima@gmail.com Twitter: https://twitter.com/alan_xD Google Plus: https://plus.google.com/104263067416398144473/posts?tab=XX
- Sugerido como Resposta Junior Galvão - MVPMVP quinta-feira, 18 de fevereiro de 2016 18:06
- Marcado como Resposta Marcos SJ sexta-feira, 19 de fevereiro de 2016 11:16
Todas as Respostas
-
-
Tente utilizar "rownumber" mas, como apenas como resultado da subconsulta e não da consulta principal, como abaixo:
select * from (select ROW_NUMBER() over (order by id) as RowNum, * from minha_tabela) as MT where MT.RowNum > 1
Não sei se é a solução mais elegante, mas acho que vale a pena tentar ;)
Abs
Alexandre Felipe Malavasi Cardoso
- Editado Alexandre F. Malavasi Cardoso sexta-feira, 19 de julho de 2013 03:37 Complementação
- Sugerido como Resposta Junior Galvão - MVPMVP quinta-feira, 18 de fevereiro de 2016 18:06
- Marcado como Resposta Marcos SJ sexta-feira, 19 de fevereiro de 2016 11:17
-
Qual versão que você está utilizando no SQL Server?
Se você estiver usando o SQL Server 2012 utilize o "OFFSET":
SELECT * FROM MinhaTabela ORDER BY Campo OFFSET 1 ROWS
Importante lembrar que ao utilizar a função OFFSET, você precisa utilizar a cláusula ORDER BY.
Se você estiver utilizando uma versão inferior ao 2012 (2008R2 até o 2005), a query que o Alexandre Felipe mandou funcionará perfeitamente.
Abs.
Alan Machado da Silva Lima -- Blog: http://onlywhatmatters.wordpress.com/ E-mail: amachado.slima@gmail.com Twitter: https://twitter.com/alan_xD Google Plus: https://plus.google.com/104263067416398144473/posts?tab=XX
- Sugerido como Resposta Junior Galvão - MVPMVP quinta-feira, 18 de fevereiro de 2016 18:06
- Marcado como Resposta Marcos SJ sexta-feira, 19 de fevereiro de 2016 11:16
-
Tente utilizar "rownumber" mas, como apenas como resultado da subconsulta e não da consulta principal, como abaixo:
select * from (select ROW_NUMBER() over (order by id) as RowNum, * from minha_tabela) as MT where MT.RowNum > 1
Não sei se é a solução mais elegante, mas acho que vale a pena tentar ;)
Abs
Alexandre Felipe Malavasi Cardoso
Mesmo não sendo elegante poderá ser funcional.
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]
-