select * from yourtable
where id between 5-3 and 5+3
and id!=5

解决方案 »

  1.   

    请问楼主
    在php中,如何用sql查询id号为5的上3条记录和下3条记录???
    这句话是指查询id号为2,3,4,6,7,8的记录,还是指在id=5的记录的附近前三条和后三条(可能不存在2,4,6,7,8记录的呀)
    如果是前者
    select * from table
    where id between 5-3 and 5+3
    and id!=5
    就可以了
    如果是后者,要分别得到上三条和下三条select * from table
    where id<5
    order by id desc
    limit 3select * from table
    where id>5 
    order by id 
    limit 3
      

  2.   

    首先通过select date from table where id=5得到current_dateselect * from table
    where date<current_date
    order by date desc
    limit 3select * from table
    where date>current_date 
    order by date 
    limit 3