我可以确认更新员工代码(对于所有PM行)的语法是每个相应客户的VP吗?
Client Type Level Employee Code
9702 VP P 11
9702 PM P XXXX
9703 VP P 12
9703 PM P XXXX
我需要它看起来像下面
Client Type Level Employee Code
9702 VP P 11
9702 PM P 11
9703 VP P 12
9703 PM P 12
答案 0 :(得分:1)
由于我目前无法访问任何MySQL服务器,因此我无法对此进行测试,但如果内存为我提供正确的,则从连接表更新MySQL的语法应如下所示:
UPDATE `your_table` a
JOIN `your_table` b ON a.`Client` = b.`Client` AND b.`Type` = 'VP'
SET a.`Employee Code` = b.`Employee Code`
WHERE a.`Type` = 'PM'
对于MS SQL Server,语法如下:
UPDATE a
SET [Employee Code] = b.[Employee Code]
FROM your_table a
JOIN your_table b ON a.Client = b.Client AND b.Type = 'VP'
WHERE a.Type = 'PM'