我有两个表,Staff并Wages
Staff
Wages
Staff 包含
id, name, jobID, wage 1 Name1 2 2 Name2 4 3 Name3 1 4 Name4 2
Wages 包含
JobID, Wage 1 1500 2 800 3 1600 4 2000
(在我刚进入前四名的实际一栏中,还有很多列)
我缺少Staff表内的工资,而员工表中需要的工资是表中的工资Wages。
所以我需要一个查询,使Staff表看起来像:
id, name, jobID, wage 1 Name1 2 800 2 Name2 4 2000 3 Name3 1 1500 4 Name4 2 800
我尝试过的示例查询是:
UPDATE `Staff` SET wage = (SELECT wage FROM `Wages`) WHERE jobID = (Select jobId FROM `Wages`)
谢谢。
我只需要将表保持其规范化状态(不带wage列Staff),并在需要完整的(非规范化)数据集的任何时候运行此查询:
wage
SELECT s.id, s.name, s.jobID, w.wage FROM Staff s LEFT OUTER JOIN Wages w ON s.jobID = w.jobID