我有两个“技能”表,第一个包含员工的技能,第二个表包含公司的“技能”。
表员工技能
CREATE TABLE `employee_skills` (
`e_id` int(8) NOT NULL,
`skill` int(8) NOT NULL,
`points` enum('0','25','50','75','100') COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`u_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
表公司技能
CREATE TABLE `company_skills` (
`c_id` int(8) NOT NULL,
`skill` int(8) NOT NULL,
`points` enum('0','25','50','75','100') COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`u_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
因此,如果一家公司的技能 Windows 得分为 100 分,员工为 25 分,则匹配百分比为 25%。我正在使用以下查询来获取结果:
$result = $connection->prepare("select u_id, skill, points, COUNT(points) from employee_skills");
预期结果应与某些技能相匹配,并返回类似于以下内容的百分比:
技能 | 匹配
- 窗户 | 25%
- linux | ...%
- 麦克 | ...%