【发布时间】:2013-01-04 15:06:48
【问题描述】:
我有一个使用经典 ASP 和 SQL 编写的在线商店 web 应用程序,我需要有关商品订单结果的帮助。
我有一个名为“items”的表,如下所示:
ITEM_NUMBER | DESCRIPTION | PRICE | NEXT_ITEM |
-----------------------------------------------
0001 Item 0001 1.5
-----------------------------------------------
0002 Item 0002 2
-----------------------------------------------
0003 Item 0003 1
-----------------------------------------------
0004 Item 0004 3
-----------------------------------------------
0005 Item 0005 7 0030
-----------------------------------------------
.
.
.
.
-----------------------------------------------
0030 Item 0030 3
我想要做的是保持 ITEM_NUMBER 的顺序,因为 NEXT_ITEM 值为 null,但在项目 0005 之后显示项目 0030,因为它是非常相似的项目,并且项目编号在行中提到项目 0005。 之后需要返回记录集指针以继续从它跳过的地方加载结果(项目 0006)。
一旦记录集到达 0030,我希望它跳过这条记录,因为它已经对用户可见并且之前已经加载过。
【问题讨论】:
-
NEXT_ITEM 链能走多深?你能指定你希望输出的样子吗?跳过已经显示的可能是一个简单的
where ITEM_NUMBER not in (select NEXT_ITEM from Items)。
标签: sql sql-server select sql-order-by