Mysql 哪一种是存储性能评估的最佳表设计?
我想创建一个表来存储员工绩效评估 我创建这样的表Mysql 哪一种是存储性能评估的最佳表设计?,mysql,Mysql,我想创建一个表来存储员工绩效评估 我创建这样的表 id | employee| jobknowledge | Technical Skill | Quality_work | 1 | 1 | 4 | 3 | 4 | 或者我还有另一个设计 id | employee | skilltype |mark | 1 1 | jobknowledge | 4
id | employee| jobknowledge | Technical Skill | Quality_work |
1 | 1 | 4 | 3 | 4 |
或者我还有另一个设计
id | employee | skilltype |mark |
1 1 | jobknowledge | 4 |
2 | 1 | Technical_Skill| 3 |
这只是一个示例技能类型。超过20个技能类型是最佳设计您可以创建其他技能表和工作知识查询表,如下所示 技能和员工查找表
id | employee| skill |
---|---------|--------------|
1 | 1 | 4 |
2 | 1 | 5 |
3 | 1 | 2 |
工作知识也是如此
id | employee| JobKnow. |
---|---------|--------------|
1 | 1 | 4 |
2 | 1 | 2 |
3 | 1 | 10 |
因此,在将来,您可以轻松地进行查询,并且通过这样做,您还可以保持规范化。第二个选项会更好。因为当你尝试这样做时,你会得到好处:
- 更多最小属性列
- 您可以应用技能的继承类
class SkillType < Employee
def self.foo
puts "foo"
end
end
class SkillType
创建子作业\u knowledge.rb
class JobKnowledge < SkillType
def self.bar
puts "#{self.foo}"
end
end
class JobKnowledge
您可以稍微修改一下……为每个工作知识和技术技能创建查找表,因为一名员工可以拥有多个技能……因此我建议您为此创建查找表。