1

トランザクションを記録するテーブルと、以前のトランザクションを含むテーブルの 2 つのテーブルがあります。参照によってグループ化された合計を格納できる必要があります。webSQL で 2 つのテーブルから行を選択するにはどうすればよいですか?

これは私が今持っているものです:

SELECT SUM(Qtt) AS QttSumByREF, Ref from OrderMoves, CurrentMobileOrderMoves WHERE CompanyID = ? GROUP BY Ref

しかし、これはうまくいきません。

テーブルには両方とも Ref、CompanyID、Qtt 列があります。CurrentMobileOrderMoves には、操作に関係のない追加の列があります。

OK、UNION を使用してすべての行を選択する方法を見つけました。

SELECT Ref, Qtt from OrderMovesWhere CompanyID=? UNION ALL SELECT Ref, Qtt From CurrentMobileOrderMoves Where CompanyID=?

今、どのようにそれらを Ref でグループ化し、Qtt の SUM を行うことができますか?

4

1 に答える 1

1

上記のUnion allクエリをサブクエリに記述し、その結果の上部に、group by以下のように句を含めることができます-

select ref, sum(Qtt)
  from (SELECT Ref, Qtt
          from OrderMovesWhere CompanyID = ?
        UNION ALL
        SELECT Ref, Qtt From CurrentMobileOrderMoves Where CompanyID = ?) as t_1
 group by ref;
于 2013-06-28T08:28:30.317 に答える