如何从Amazon simpleDB int特定列顺序返回数据

时间:2011-05-10 17:34:13

标签: amazon-simpledb

我正在使用Amazon的SimpleDB Java客户端从SimpleDB读取数据。我遇到的问题是即使我在SelectRequest中以某种顺序指定了列,如下所示:

SelectRequest req = new SelectRequest("SELECT TIMESTAMP, TYPE, APP, http_status, USER_ID from mydata");
SElectResult res = _sdb.select(req);
..

它按以下列顺序返回数据:

 APP, TIMSTAMP, TYPE, USER_ID, http_status,

它似乎按升序自动重新排序列。有没有办法可以像我在select子句中指定的那样强制执行命令?

1 个答案:

答案 0 :(得分:0)

返回的列不是有序的列表,而是属性的无序。您无法控制它们返回的顺序。即使在查询中的某些属性不存在于每个(或任何)返回的项目的情况下,SELECT也可以使用。在那些情况下,你无论如何都无法依赖订单。如果您已经构建了数据集以便始终存在属性,我意识到这是一个小小的安慰。

但是,由于您提前了解了所需的顺序,因此以正确的顺序从结果中提取数据应该非常容易。毕竟它只是XML,或者在Java客户端的情况下,是新解析的XML。

  

Select操作返回一组与select表达式匹配的ItemNames属性。

SimpleDB docs for SELECT

相关问题