MySQL从两个现有的表计算中创建一个表

时间:2013-07-25 07:19:01

标签: php mysql database-design yii

我正在使用Yii和MySQL创建一个php网页。我的问题出在数据库部分。

我有两张桌子,“股票”和“给定”。他们就像:

stock = id (primary key), name, amount (this is integer), details

given = id (from stock), name (from stock), amount (given amount, thus not same with stock), ...

我想创建一个表“leftStock”,其格式与“stock”相同,但数量不同。在给出一些之后,它将是库存中剩余的数量。由于在不同的时间,可以给出相同项目的不同数量,因此给定表格的id和名称不是唯一的。因此,我将使用“sum(given.amount)”,但它对我来说并不明确。

我以为我可以使用“创建表...选择”样式编码,但我无法构建其结构。有人能帮助我吗?

(我也可以在Yii网页中使用“view”吗?因为我不会对“leftStock”表格进行任何直接更改,所以它的视图也可能是可行的。)

1 个答案:

答案 0 :(得分:0)

也应该通过创建查询来完成。

试试这个,我还没试过它:

SELECT 
    (SELECT SUM(a.amount - b.amount) 
    FROM stock AS a, given AS b 
    WHERE a.id = b.id AND a.id = id) AS `itemleft`, *
FROM stock