select 名称, SUM(数量) , 柜台号 FROM 进货表 where 进货表.名称 IN ( SELEC T * FROM lsb_mc) ; 你这个写法有问题,如果你只是想获取总的数量,没必要查询名称 select SUM(数量) FROM 进货表 where 进货表.名称 IN ( SELEC T * FROM lsb_mc) ;要么就是要分组查询select 名称, SUM(数量) , 柜台号 FROM 进货表 where 进货表.名称 IN ( SELEC T * FROM lsb_mc) Group BY (柜台号或者名称); 按柜台号或者名称分类,获取每类的总数量 所以sum只计算所有的数量,分了组,就取每组的数量
。。你没发现sun(数量)字段的值是30 = 10+20 是a 和 mfc 的和。
改成这样,这个怎么错了 a=sql.query("insert into lsb_rkzl (\ select 名称, SUM(数量) , 柜台号 \ FROM 进货表 where 进货表.名称 \ IN ( SELECT * FROM lsb_mc) BROUP BY 名称)");
mysql> select 名称, SUM(数量) , 柜台号 FROM 进货表 where 进货表.名称 IN ( SELE CT * FROM lsb_mc) BROUP BY (名称); ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BROUP BY (名称)' at line 1
有几条记录
T * FROM lsb_mc) ;
你这个写法有问题,如果你只是想获取总的数量,没必要查询名称
select SUM(数量) FROM 进货表 where 进货表.名称 IN ( SELEC
T * FROM lsb_mc) ;要么就是要分组查询select 名称, SUM(数量) , 柜台号 FROM 进货表 where 进货表.名称 IN ( SELEC
T * FROM lsb_mc) Group BY (柜台号或者名称); 按柜台号或者名称分类,获取每类的总数量
所以sum只计算所有的数量,分了组,就取每组的数量
a=sql.query("insert into lsb_rkzl (\
select 名称, SUM(数量) , 柜台号 \
FROM 进货表 where 进货表.名称 \
IN ( SELECT * FROM lsb_mc) BROUP BY 名称)");
mysql> select 名称, SUM(数量) , 柜台号 FROM 进货表 where 进货表.名称 IN ( SELE
CT * FROM lsb_mc) BROUP BY (名称);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'BROUP
BY (名称)' at line 1
group by