平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“mysql数据库表中的同一字段取反处理方式”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。
#新建一张testUser表,用来做测试效果
CREATE TABLE testUser (userName VARCHAR (50), sex VARCHAR (10)) ;
#向testUser表中插入以下数据
INSERT INTO testUser(userName, sex) VALUES ('令狐冲', '女');
INSERT INTO testUser(userName, sex) VALUES ('张无忌', '女');
INSERT INTO testUser(userName, sex) VALUES ('韦小宝', '女');
INSERT INTO testUser(userName, sex) VALUES ('小龙女', '男');
INSERT INTO testUser(userName, sex) VALUES ('任盈盈', '男');
INSERT INTO testUser(userName, sex) VALUES ('周芷若', '男');

我现在想把所有的男改成女,把所有的女改成男,如何实现?
如下所示:
SELECT * FROM testUser;
/*
UPDATE 表名 SET 字段名 =
CASE 字段名
WHEN 值 THEN 值
WHEN 值 THEN 值
END
WHERE 筛选条件
*/
UPDATE testUser SET sex =
CASE sex
WHEN '男' THEN '女'
WHEN '女' THEN '男'
END
SELECT * FROM testUser;

以上为个人经验,希望能给大家一个参考,也希望大家多多兼容脚本之家。