0

我一直在研究保存订单号和订单信息的数据库。以前,我使用的报告为每个订购的商品提供了订单 ID 和唯一的商品 ID。项目 ID 是主键,因为它是唯一分配的值。

这意味着一个订单# 中可能有多个项目,每个项目由一个唯一的项目 ID 标识。

现在我们的要求已更改为更加实时,这意味着提供唯一项目 ID 的报告尚未运行。因此,我需要生成我自己的唯一项目 ID,但只能在同一个订单内 #。

对于使用亚马逊 MWS 的用户的其他信息:

以前我使用报告 API 生成 _GET_AMAZON_FULFILLED_SHIPMENTS_DATA_ 来提供我们的履行数据,而第 3 方集成公司提取 _GET_FLAT_FILE_ORDER_REPORT_DATA_ 报告来处理我们的商家履行的订单。我们现在希望使用 Orders API 让我们的商家实时完成订单,遗憾的是它不提供 _GET_FLAT_FILE_ORDER_REPORT_DATA_ 文件提供的 orderItemId。我需要解决的问题与缺少该字段有关。

一些要使用的示例数据是:

Order-ID        Item-ID        Item
222-2212            1         redShirt
222-2216            1         redShirt
222-2212            2         blueShirt
222-2212            3         greenShirt
222-2218            1         noShirt

我希望能够做到:

SELECT * from order_data WHERE Order-ID like '222-2212'; 

并退回所有 3 件物品。我遇到的问题是我不知道如何根据 Order-ID 的计数提供一个唯一的自动递增数字。我还想避免在所有数据中使用标准的自动递增值,因为我最终可能会得到重复的订单,并且需要尝试使用 DISTINCT 进行过滤。

有没有人对我如何做到这一点有任何想法、指示或建议?我确实有幸从头开始重新设计整个数据库,所以我愿意接受建议。

- 编辑 -

我目前正在跟进亚马逊,以确定订单 API 返回的 orderItemId 是否是随机生成的。当我发现时,我会在这里发布更多细节。

4

1 回答 1

0

原来 orderItemId 实际上是一个唯一值。我能够在亚马逊网站上使用 Feed 确认多个货件下找到文档。声明指出:

order-item-id Amazon.com 订单中商品的唯一标识号。此编号在您的订单报告中提供。注意:这与产品 ASIN 不同。order-item-id 将因订单而异。

我将使用它作为我的主键,所以我不需要像今天早上预期的那样生成随机值。

于 2012-06-21T20:59:58.447 回答