从现有表和SUM重复库存表创建MySQL表

时间:2017-01-25 18:40:45

标签: php mysql database excel sum

我有三张桌子

零件;价钱 ;库存

每个表都有一个不明确的“part_number”列

+++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++

我需要从三个表中创建一个TABLE 目录 -

使用 Parts 表中的这些标头: “part_number”,“part_details”,“part_description”

并包含 Price 表中的“sale_price”列 以及库存

中的“数量”列

+++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++

(我的问题)

库存表有多个行,其中“part_number”与“qty”不同

我需要对重复的“part_number”行的“qty”列进行SUM 并将返回值插入到新的目录表“qty”列中,该列包含可用的每个唯一“part_number”。

+++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++

我愿意更改每个表中的“part_number”列以避免歧义问题。

在Excel中执行此操作没有问题,但我真的希望通过MySQL实现此功能。我每次都可以通过MySQL手动执行此操作,但每天创建某种Cron作业来更新这个新的“目录”表也会很有帮助,因为我已经在研究一种直接从MySQL更新我的三个表的方法Excel中的插件。

第一次在这里发帖提问。抱歉所有文字,我肯定会在下次检查格式化功能。谢谢!

+++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++

结束结果(示例)

SCREENSHOT of CATALOG table EXCEL EXAMPLE (Please Click!, Embedded images not able for me yet

1 个答案:

答案 0 :(得分:0)

在阅读了StackOverflow之后,我发现了一个简单的答案。但是,这仅在将SELECT列标题名称更改为在表格中唯一之后才有效,因此避免了歧义错误。

在表格中更改了列名:
Table.Parts( part_number 列)= 无变化
Table.Inventory( part_number 列)=" inv_part "

CREATE TABLE Catalog
 AS (SELECT part_number, SUM(Qty) Qty
     FROM Parts, Inventory
     WHERE part_number = inv_part GROUP BY inv_part);

这会在我的库存表中拉出我的所有零件编号,同时添加重复条目的总值。

  

如果有人仍然可以指出我正确的方向进行自动更新   这张新表,我很感激。

     

- 我正在看Triggers,不确定这是否是正确的方法。我希望回答我自己的问题并不关闭这篇文章。   再次感谢!