想要特定ID的Upline和Downline数据

时间:2010-01-18 14:16:54

标签: sql sql-server sql-server-2005 tsql

这是表格 和数据如:

id name
1  test1
2  test2
3  test3
4  test4
5  test5
6  test6

从上面的数据我想要数据 如果我将id作为参数传递,并按顺序从up和gown返回数据

示例如果我将id作为参数= 4传递,那么它应该返回 上划线2行和下划线2行特定id,它应该是这样的

id name

2  test2
3  test3
4  test4
5  test5
6  test6

和id = 3相同

id name
1  test1
2  test2
3  test3
4  test4
5  test5

1 个答案:

答案 0 :(得分:1)

SELECT TOP 3 id,name     从表     WHERE id =< @ID     ORDER BY id DESC

UNION 

SELECT TOP 2 id, name
FROM table
WHERE id > @id 
ORDER BY id ACS