数据库如何查询第二条数据且ID不同

关于数据库如何查询第二条数据且ID不同

    在sever 2008数据库中,查询语句为

            select * from 表名  或则   select 列名 from 表名

这是查询一个表中所有的数据,那么查询第二语句呢?

   开始用“top 2”是可以查询前两条数据的,再根据指定的列名排序,这样想可以

             “select top 2 * from 表名 order by 列名 desc”(desc倒序 acs正序),

但是查询出来的为最后两条的数据,可见是先倒序然后查询的头两条。那么倒序是行不通。

   正序又有两条数据,要求只要一条,显然就把第一条去掉,如何去掉?首先得查询出来,

             “select top 1 * from 表名 order by 列名ID”(正序不需要添加acs,本身就是正序)

  再就该数据的ID去除,如何去掉就用 "not in"

             "select * from 表名 where 列名ID not in (Select Top 1 列名ID from 表名 Order By 列名ID ) "

这样查询的数据就不存在第一条数据,现在的第二条成为了第一条数据。而“数据库如何查询第二条数据且ID不同”现在就是查询第一条数据而已。

            "select top 1 * from 表名 where 列名ID not in (Select Top 1 列名ID from 表名 Order By 列名ID ) "

转载于:https://www.cnblogs.com/javadan/p/4325200.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值