我需要连接2表上的SUM和MULTIPLIES的帮助:
tb1
tb2
在tb1
中,我需要求和 QTY
和倍数 SKU
与PRICE
相同,而不必重复相同的{ {1}}(SKU
,21135208
):
当前查询:
21035621
我的结果是:
预期结果是:
答案 0 :(得分:2)
我相信您可以通过使用诸如SELECT DISTINCT ... FROM tb1
之类的子查询来过滤出重复项,同时保持其余查询不变:
SELECT
tb0.DOC_NO,
CAST ( SUM ( tb2.QTY ) AS FLOAT ) AS QTY_TOTAL,
ROUND( CAST ( SUM ( tb2.QTY * tb2.PRICE ) AS FLOAT ), 2) AS PRICE_TOTAL,
tb0.DATE,
tb2.STATUS_A,
tb2.STATUS_B
FROM
(SELECT DISTINCT DOC_NO, CM, SKU, PRICE, QTY, DATE FROM tb1) AS tb0
INNER JOIN tb2 ON tb0.DOC_NO = tb2.DOC_NO
WHERE
tb2.STATUS_B = '0'
GROUP BY
tb0.DOC_NO,
tb0.DATE,
tb2.STATUS_A,
tb2.STATUS_B
ORDER BY
COH.DOC_NO_REQ_TO_ULI DESC
注意:查询中的表别名存在一些问题:
STATUS_A
或STATUS_B
的前缀应为tb2
,而不是tb1
(我已将其固定)COH
子句中使用的ORDER BY
在查询的任何地方都没有声明(这是语法错误)