php - 从一个mysql表复制一行到另一个表,并修改字段值

标签 php mysql

我有一张 table daily 和一张 table food。在 food 中,我将我吃的食物数据库存储到 food 中。在daily中,我只存储当天吃的食物(必须从food中选择,修改,存储在daily),并在在一天结束时,daily 表被清除(所有行都被 DELETE FROM daily 删除)。

我想弄清楚的是如何从表 food 中复制一行并将其复制到表 daily 中,同时修改它的值。

fooddaily 都具有相同的结构。

食物(此表中的任何内容都不会改变)

name    calories   grams  fat   protein
---------------------------------------
apple   50         80     1.2   2
potato  90         45     3.4   5
carrot  10         70     6.2   6

daily(我吃了一个93g的苹果后的表格)

name    calories   grams  fat   protein
---------------------------------------
apple   58.125     93     1.395 2.325

示例

我称出一种只存在于我的食物数据库中的食物,如果不存在,我就必须将其添加进去。

然后我从下拉列表中选择一种食物并输入它的重量(以克为单位)。

我从列表中选择一个苹果。我称了我的苹果,它是93g

我的 93g 除以 80g 得到 1.1625苹果(脂肪和蛋白质)的所有统计数据都必须乘以1.1625,然后插入到我的daily 表中。

如何从 food 中检索一行,用我的修饰符 (1.1625) 修改其中的每个值,并将其插入到我的 daily table ?


我刚刚意识到我可以将我选择的任何食物加载到一个数组中并修改每个单元格的值,然后将该数组泵入daily

最佳答案

在 PHP 中,您只需加载行、修改值并构建查询以将其插入到 daily 中。那里没什么特别的,所以我猜你问的是如何在 SQL 中做到这一点:

INSERT INTO daily (name,
                   calories,
                   grams,
                   fat,
                   protein)
SELECT name,
       calories * 1.1625,
       grams * 1.1625,
       fat * 1.1625,
       protein * 1.1625
FROM food
WHERE name = "apple"

关于php - 从一个mysql表复制一行到另一个表,并修改字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14150456/

相关文章:

php - mysqli 数据库连接类不工作

php - 如何创建原始帖子的链接,PHP

java - 为什么此代码的更新按钮不起作用?

php - fatal error : Call to a member function connect() on null

php - Laravel 解密查看

php - 广告列表未显示在 PHP 中

MySQL 复制 - 我可以在从属服务器上创建表而不破坏复制吗?

php - Whatsapp PHP api 接收编码消息

php - nginx - 目录中的友好 URL

php - 是否可以 <br>在 CSS 中每 10 个表格行?