php - MySQL:从 "children"更新 "parents"的值

标签 php mysql

我有一个包含“ parent ”和“ child ”行的数据库。类似的条目,但其中一个条目是更具体的子条目的通用版本。但是,我希望这些条目在某些列中完全匹配。

这是我的数据库的示例:

| ID |  IsChildOfID |   Food    |   Type        |
| 1  |              |           |   Fruit       |
| 2  |      1       |   Apple   |   Fruit       |
| 3  |      1       |   Pear    |   Vegetable   |
| 4  |      1       |   Banana  |   Vegetable   |
| 5  |              |           |   Vegetable   |
| 6  |      5       |   Lettuce |   Fruit       |
| 7  |      5       |   Celery  |   Vegetable   |
| 8  |      5       |   Cabbage |   Fruit       |

在此示例中,有 2 个 parent 和 6 个 child 。 “type”字段的值对于某些子项来说并不一致。我希望能够在数据库中找到任何子项,并仅在某些列中将其替换为其父项的值。这可以用纯 MySQL 实现还是需要用 php 实现?谢谢。

最佳答案

UPDATE name_of_table SET Type = "Fruit" WHERE IsChildOfID = 1

UPDATE name_of_table SET Type = "Vegetable" WHERE IsChildOfID = 5
  • 但是如果您想动态执行此操作,请使用 php 或其他语言...

此外,我更愿意使用 2 个表来存储此类数据...

关于php - MySQL:从 "children"更新 "parents"的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12647702/

相关文章:

php - 将相同的 ID 显示为单个 ID

php - 在mysqli中获取多行

mysql - 无论如何,返回 IN 值的默认结果

PHP 错误 - 将用户表单插入数据库

php - 使用 php 限制对 pdf 页面的访问

php - 如何高效地通过JSON从MYSQL服务器获取BLOB图像文件

php - 在自由格式文本中查找日期的最佳方法是什么?

php - joomla下执行的php从sql中检索多行数据

mysql - 错误: 1005 Can't add foreign key (errno:121 Duplate key on write or update)

mysql - 为什么我的 Cassandra 数据库读取数据速度太慢?想要在 10 秒内读取 100,000 行