在MySQL表中用'b'更新'a'记录,用'a'更新'b'

时间:2010-03-30 14:00:43

标签: mysql sql sql-update

在我的表中有两个字段,一个是名字,另一个是性别。我想解雇查询 每个男性都会更新女性,反之亦然。

我不想使用程序,触发器或功能。我只能通过简单的查询来做到这一点。

2 个答案:

答案 0 :(得分:4)

迈出三步。

- 步骤1:为男性提供临时性别价值(性别X)

- 步骤2:将女性记录设置为男性(F至M)

- 步骤3:将旧的男性记录设置为     女性( X 到F)

Update table Set Gender = 'X' where Gender = 'M'
Update table Set Gender = 'M' where Gender = 'F'
Update table Set Gender = 'F' where Gender = 'X'

答案 1 :(得分:4)

在MSSQL中你可以这样做:

UPDATE table SET gender = CASE WHEN gender = 'M' THEN 'F' ELSE 'M' END

如果有类似的东西是My-SQL,那么这是一个简单的陈述。