mySQL分组查询不工作

mySQL分组查询不工作,mysql,Mysql,我想加入下面的表格。我有疑问: SELECT MAX(s.Date) AS last_ship_date, s.Form AS summary_form, SUM(s.Total) AS qty_ship, SUM(f.Quantity) AS qty_req FROM Slip AS s LEFT OUTER JOIN Forms AS f ON s.Form=f.Form AND s.DocketNumber=f.DocketNumber

我想加入下面的表格。我有疑问:

SELECT MAX(s.Date) AS last_ship_date,
    s.Form AS summary_form, 
    SUM(s.Total) AS qty_ship,
    SUM(f.Quantity) AS qty_req
    FROM Slip AS s
    LEFT OUTER JOIN Forms AS f ON s.Form=f.Form
    AND s.DocketNumber=f.DocketNumber
    WHERE s.DocketNumber=20491
    GROUP BY s.Form
这个查询给出英语的qty\u req为210000,而我想要的是105000。我做错了什么

编辑:我希望两个表中都有倍数。这就是我使用SUM的原因。我想把它按形式汇总

注意:如果我只执行以下操作,那么我就可以得到105000的英语,就像我想要的一样

SELECT SUM(f.Quantity) AS qty_req FROM Forms AS f
WHERE f.DocketNumber=20491 
GROUP BY f.Form 
表格形式

| Form    | Quantity | DocketNumber | Date
| English | 105000| 20491
| French  | 105000 | 20491
工作台滑动

| Form    | DocketNumber | Total | Date
| English | 20491        | 7000
| English | 20491        | 1000
| English | 20491        | 1000
| French  | 20491        | 7000

左外连接形式为s.Form=f.Form上的f s.DocketNumber=f.DocketNumber


如果我正确读取了表中的值,则此联接会导致每个表中有多个匹配项,这将导致表中的值多次相加。

这取决于您的数据和使用情况。它本身并不坏;您的数据具有倍数。如果不应该,请修复数据并在其中放置主键。如果应该的话,你需要决定如何获得你想要的唱片(前1名或其他)。否则,数字是正确的。我确实希望同一表单有多个条目。这就是为什么我要把它们加起来。