【发布时间】:2014-09-07 16:39:14
【问题描述】:
问题如下。假设有两种类型的订单,VE 和 VC 订单(VE 订单优先于 VC 订单)。以及两种类型的优先级 HIGH 和 LOW。每个订单都由 ORDER_ID 标识,然后标有订单类型,最后标有优先级。随着时间的推移,订单可能会改进其类型、优先级或两者兼而有之,从而导致几个具有重复订单 ID 的新条目。任务是将每个订单的优先级最高的状态标记为 1,其余的标记为 0。考虑到 ORDERS 表足够大并且在某些情况下必须重新标记某些行,您将如何尝试执行此操作。
示例输入:
示例输出:
【问题讨论】:
-
为什么会收到重复的订单 ID?这就是你需要解决的问题。那么你就不需要实现那个奇怪的标签方案了。
-
嗯,你试过什么?
标签: sql oracle performance query-optimization