我有一张表格列出了公司及其业务活动。我正在尝试做以下事情:
我的目标是建立一个合适的标记系统。
primary_activity / secondary_activity的值来自50个项目的列表,我有一个我要映射到的约80个技能的列表。
以下是对我的表格的更好看:
承包商表
------------------------------------------------------------------------------
| id | company_name | primary_activity | secondary_activity
------------------------------------------------------------------------------
| 1 | Jones HVAC | Plumbing, Heating and A/C | NULL
技能表
----------------------------
| id | name |
----------------------------
| 1 | HVAC Installation |
----------------------------
| 2 | HVAC Repair |
----------------------------
contractor_skill表(目前为空)
--------------------------------
| id | contractor_id | skill_id
--------------------------------
| 1 | 1 | 1
--------------------------------
| 2 | 1 | 2
--------------------------------
我知道我可以为每个业务活动 - 技能组合运行一个mysql查询,但结果却是大约200个插入语句,如下所示:
INSERT INTO contractor_skill(
contractor_id,
skill_id)
SELECT id,
"1"
FROM contractors a
WHERE a.primary_activity="Plumbing, Heating and A/C"
OR a.secondary_activity="Plumbing, Heating and A/C"
我没有运行很多mysql查询,我想知道是否有一种不同的方法可以解决这个问题并不像手动那样?