我一直试图让这个工作12小时现在我不能:-(有人可以告诉我如何让ssnumber
分组并获得每个ssnumber
的总数
这是我现在拥有的。在表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
列的位置,所以我要做的是来自每个unit_no的所有负载的rateB总和然后将它们分组然后进入表号2和将ssnumber与表编号1中的单元编号分组,并将表编号1中的rateB汇总。
像这样的东西(见下文)但它不起作用:-(
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
非常感谢你们帮助......
答案 0 :(得分:2)
根据要求,如果没有关于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
答案 1 :(得分:0)
我建议不要在一个选择查询中从两个选择查询中获取数据,而是尝试将它们作为单独的查询获取。这节省了大量时间。那,或者你可以为结果创建一个表,并将每个查询的结果更新到表中。