我有一个带有“父母”和“孩子”行的数据库。类似的条目,但是一个条目是更具体的子项的通用版本。但是,我希望这些条目在某些列中完全匹配。
这是我的数据库的示例:
| 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个父母和6个孩子。 “类型”字段的值对于某些子代来说是不确定的。我希望能够在数据库中找到任何子级,并仅在某些列中将其替换为其父级的值。纯粹使用MySQL是否可能做到这一点,或者我需要使用php吗?谢谢。
最佳答案
UPDATE name_of_table SET Type = "Fruit" WHERE IsChildOfID = 1
和
UPDATE name_of_table SET Type = "Vegetable" WHERE IsChildOfID = 5
但是,如果您想动态地执行此操作,请使用php或其他语言...
我也更喜欢使用2个表来处理此类数据...