我想比较 SQL 中的两列
oldname newname empid
j11 j12
j12 j13
j13
我想获取已完成某些证书的员工列表。假设 emp1 已完成 j11 证书,但后来证书名称更改为 j12。该员工仍应获得认证。稍后,如果 j12 更改为 j13,则该员工仍应被视为已获得认证。
我想比较 SQL 中的两列
oldname newname empid
j11 j12
j12 j13
j13
我想获取已完成某些证书的员工列表。假设 emp1 已完成 j11 证书,但后来证书名称更改为 j12。该员工仍应获得认证。稍后,如果 j12 更改为 j13,则该员工仍应被视为已获得认证。
你的表结构应该像 web_bod 所说的那样。您的查询应如下所示:
SELECT employeeid, name FROM
Employees e INNER JOIN EmployeeCertificates ec ON e.id = ec.employeeId
INNER JOIN Certificates c ON c.id = ec.certificateId
WHERE Certificates.id = ?
你应该有三个表:
如果你给员工和证书以及不变的标识符,那么他们的名字是否改变都没有关系(这是你构建关系数据库时的一个重要设计原则)。