从2个不同的表中得到SUM到一个结果
我一直试图让这个工作12小时,我不能:-(有人可以告诉我如何可以得到ssnumber
分组,并获得每个ssnumber
。从2个不同的表中得到SUM到一个结果
这是我现在已经在表1号我有这样的代码
SELECT
UNIT_NO, SUM(RATEB) AS TOTALRTE
FROM TABLE1
WHERE
TRUCK_PAID = 1
AND PICK_UP_DATE >= '(fromdate)'
AND PICK_UP_DATE <= '(todate)'
GROUP BY
UNIT_NO
ORDER BY
UNIT_NO
但表2号是在ssnumber
列,所以我想要做的就是rateB总和来自每个unit_no的所有负载,然后对它们进行分组,然后进入表号2并将ssnumber与来自表号1的单元号进行分组,从表数求和rateB 1.
像这样(见下文),但它不工作:-(
SELECT
UNIT_NO, SUM(RATEB)
FROM
TABLE1
WHERE
TRUCK_PAID = 1
AND PICK_UP_DATE >= '(fromdate)'
AND PICK_UP_DATE <= '(todate)'
GROUP BY
UNIT_NO
JOIN
TABLE TABLE1.UNIT_NO = TABLE2.UNIT_NO GROUP BY TABLE2.SS_NUM
或
SELECT
UNIT_NO, SUM(RATEB) AS TOTALRATE
FROM
TABLE1
GROUP BY
UNIT_NO
JOIN
TRUCKS ON (TABLE1.UNIT_NO = TABLE2.UNIT_NO)
GROUP BY
TABLE2.SSNUMBER
谢谢你们这么多的帮助。 ..
根据要求,很难真正理解你想要完成什么,而没有关于table2的更多信息,也许是你期待的一个例子。然而,我从你的描述中得到的结果是你正在试图完成这样的事情?
SELECT UNIT_NO, TOTALRTE, TOTALLDSRTE
FROM
(
SELECT UNIT_NO,SUM(RATEB) AS TOTALRTE
FROM LOADS
GROUP BY UNIT_NO
) AS tbl1
JOIN
(
SELECT SS_NUM, SUM(RATEB) AS TOTALLDSRTE
FROM LOADS
GROUP BY SS_NUM
) AS tbl2
ON tbl1.UNIT_NO = tbl2.SS_NUM
我想按unit_no进行分组,并获得名为rateb的字段中的总和(总和)。在表2我想按ss_number分组,然后以某种方式加入? table1通过unit_no,然后输出按ss_number – compcobalt
分组的结果(如下所示),但它不起作用:-(SELECT UNIT_NO,SUM(RATEB)AS TOTALRATE FROM TABLE1 GROUP BY UNIT_NO JOIN TRUCKS ON(TABLE1。 UNIT_NO = TABLE2.UNIT_NO)GROUP BY TABLE2.SSNUMBER – compcobalt
所以,你想要的是加入他们的行列,似乎然后,只需加入您的分组: SELECT UNIT_NO,SUM(RATEB)AS TOTALRATE FROM表1 JOIN的卡车(TABLE1 .UNIT_NO = TABLE2.UNIT_NO) GROUP BY UNIT_NO,TABLE2.SSNUMBER 如果这是不正确的,那么我认为使用数据的一个快速示例将是最好的 –
我会建议,而不是在一个选择查询,从两个选择查询中获取数据,试图把它们取为单独的查询。这节省了很多时间。也就是说,您可以为结果创建一个表并将每个查询的结果更新到表中。
什么是表2?你能否显示你的表格结构和样品数据,以及所需的输出? – JNK
我试图通过将字段Unit_No分组并获得来自名为rateb的字段的总数(总和)来从table1获得总数(总和),然后我想进入table2并使Unit_No与表2中的Unit_No字段匹配然后按ss_Num字段 – compcobalt
对结果进行分组,以便table1和table2都具有字段名称Unit_No我只是想要加入?然后在一起,这样我就可以按ss_num对它们进行分组并获得总数(总和),而不是通过table1中的Unit_No – compcobalt