我正在处理MySQL数据库中的一个表,该数据库有以下列:
- ItemID (auto incremented key)
- Item
- CategoryID (empty column)
- Category
- SubcategoryID (empty column)
- Subcategory在同一数据库中的其他表中,我有一个类别和子类别的列表及其唯一In,我希望从现有表中获取这些In,并将它们移植到我前面描述的item表中。在移植完ID之后,我打算删除类别和子类别条目,因为ID将为我的目的提供足够的引用。
我可以手动完成这项工作,如果有必要,我会手动完成,但是在MySQL中查看数千条条目听起来不像是我理想的下午。
我的问题很简单,是否有一种方法可以使用我现有的表以我所描述的方式修改我的项目表(上面)?
谢谢!
发布于 2015-08-18 15:47:17
因此,您有一个category表和一个id和category字段,category字段匹配items.category表。
要更新items.category_id,请连接到items.category <=> category.category上的category表,并使用category.id中的值更新items.category_id
UPDATE items
JOIN category ON items.category <=> category.category
SET items.category_id = category.id;您可能需要更改某些列的名称,但希望它们是显而易见的。
对子类别和任何其他字段重复此操作。
注意:<=>是空安全相等的,因此带有空值的行将得到正确的更新。
https://stackoverflow.com/questions/32076504
复制相似问题