0

我有下表:

Order(idOrder, address, cap, price, quantity, date, idProduct, idUser, idCountry)

现在,我想要一个具有相同字段的表,其中字段数量是 idProduct 相同的数量之和。

例如,如果我有以下元组:

1, street1, 123, 4, 6, 2000-12-12, 1, 2, 3
2, street1, 123, 4, 1, 2000-12-12, 2, 2, 2
3, street1, 123, 4, 5, 2000-12-12, 2, 2, 2
4, street1, 123, 4, 1, 2000-12-12, 4, 2, 2

我希望有:

1, street1, 123, 4, 6, 2000-12-12, 1, 2, 3
2, street1, 123, 4, 6, 2000-12-12, 2, 2, 2
4, street1, 123, 4, 1, 2000-12-12, 4, 2, 2

我必须使用标准

4

2 回答 2

0

对新表使用 group by 运算符...(如果问题特定于 DB...)

INSERT INTO NEW_TABLE (ID(may be auto generated), Select address, cap, price, sum(quantity), date, idProduct, idUser, idCountry from old_table group by address, cap, price, date, idProduct, idUser, idCountry )
于 2012-11-29T16:06:17.200 回答
0

假设休眠:您需要使用预测来按标准应用分组。

例子:

    Criteria crit = session.createCriteria(Order.class);
    ProjectionList projList = Projections.projectionList();
    projList.add(Projections.groupProperty("quantity"));

    crit.setProjection(projList);

有关更多信息,请参阅此示例求和示例

于 2012-11-29T16:03:48.620 回答