欢迎来到我的博客园

SQL 排序的简单用法

查找除第一条纪录的纪录行

这好像是我在一家企业面试的一个题目,刚开始因为中文不好,理解意思以为把第一条纪录除掉,后来想想起码也得写上几行代码吧,才产生如下做法

Create table #Tb_produt(RowID numeric(9,0) identity(1,1),product_ID varchar(20),product_Name nvarchar(50),product_Price money)

insert into #Tb_produt
select 'P001','desk',200
insert into #Tb_produt
select 'P002','lice',300
insert into #Tb_produt
select 'P003','tick',400
insert into #Tb_produt
select 'P002','ticked',400
insert into #Tb_produt
select 'P003','tickd',400

with TT as(
select ROW_NUMBER() over (partition by product_ID order by product_ID)id,*
from #Tb_produt)
select  * from TT a where id=1

得到结果:

1 1 P001 desk 200.00
1 2 P002 lice 300.00
1 5 P003 tickd 400.00


posted @ 2012-08-20 17:03  芯宸  阅读(380)  评论(0编辑  收藏  举报