17

i want to select all the row except the Top One so can anybody help me on this Query.

Alex Aza
  • 76,499
  • 26
  • 155
  • 134
Dinup Kandel
  • 2,457
  • 4
  • 21
  • 38

4 Answers4

10
with cte as
(
    select *, row_number() over (order by CustomerId) RowNumber
    from Sales.Customer
)
select *
from cte
where RowNumber != 1

OR

select *
from
(
    select *, row_number() over (order by CustomerId) RowNumber
    from Sales.Customer
) tt
where RowNumber != 1
Alex Aza
  • 76,499
  • 26
  • 155
  • 134
  • **with cte as ( select *, row_number() over (order by loan_issue_id) RowNumber from dbo.loan_issue_mcg ) select * from cte where RowNumber != 1 and loan_id=1170 ** this one still shows all the row – Dinup Kandel May 17 '11 at 07:00
  • @Dinup kandel - add `where loan_id=1170` inside of `cte` – Alex Aza May 17 '11 at 07:05
  • @Dinup kandel - with cte as ( select *, row_number() over (order by loan_issue_id) RowNumber from dbo.loan_issue_mcg where loan_id=1170) select * from cte where RowNumber != 1 – Alex Aza May 17 '11 at 07:06
7

In SQL Server 2012, you can do this:

select * from TableName order by Id offset 1 rows
david
  • 769
  • 10
  • 10
1
SELECT * FROM table1
EXCEPT SELECT TOP 1 * FROM table1
kravits88
  • 12,431
  • 1
  • 51
  • 53
0

If id attribute is known than we can use..

SELECT t1.* FROM table t1 LEFT JOIN (
  SELECT id
  FROM table 
  LIMIT 1
) t2 ON t1.id = t2.id
WHERE t2.id IS NULL;