将 WHERE 子句与 GROUP BY 一起使用
Using WHERE CLAUSE with GROUP BY
我想用 2 tables -
显示每张账单的售出商品总价值
这里是table项,table的结构是I_Code->int,Name->Varchar,Category->Varchar,Rate->int
这是table bills,table的结构是BillNo->int,Date->date,
I_Code->整数, 数量->整数
这是我试图获得所需输出的查询
SELECT i.`rate` * b.`qty`, b.`BillNo` FROM bills b, items i WHERE b.I_Code=i.I_Code GROUP BY `BillNo` ;
但是输出不正确
预期输出
试试这个:
SELECT SUM(A.TOT), b.`BillNo`
FROM (
SELECT i.`rate` * b.`qty` AS TOT, b.`BillNo`
FROM bills b, items i
WHERE b.I_Code = i.I_Code
) AS A
GROUP BY `BillNo`;
或
SELECT SUM(i.`rate` * b.`qty`) AS TOT, b.`BillNo`
FROM bills b, items i
WHERE b.I_Code = i.I_Code
GROUP BY `BillNo`;
我想用 2 tables -
显示每张账单的售出商品总价值这里是table项,table的结构是I_Code->int,Name->Varchar,Category->Varchar,Rate->int
这是table bills,table的结构是BillNo->int,Date->date, I_Code->整数, 数量->整数
这是我试图获得所需输出的查询
SELECT i.`rate` * b.`qty`, b.`BillNo` FROM bills b, items i WHERE b.I_Code=i.I_Code GROUP BY `BillNo` ;
但是输出不正确
预期输出
试试这个:
SELECT SUM(A.TOT), b.`BillNo`
FROM (
SELECT i.`rate` * b.`qty` AS TOT, b.`BillNo`
FROM bills b, items i
WHERE b.I_Code = i.I_Code
) AS A
GROUP BY `BillNo`;
或
SELECT SUM(i.`rate` * b.`qty`) AS TOT, b.`BillNo`
FROM bills b, items i
WHERE b.I_Code = i.I_Code
GROUP BY `BillNo`;