平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“mysql数据库表中的同一字段取反处理方式”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。
直接po截图和代码
#新建一张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;

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多兼容脚本之家。
您可能感兴趣的文章:
- MySQL根据 ID 将表 B 的字段更新到表 A的实战教程
- MySQL8中大小写敏感与不敏感排序规则的选择(根据字段语义)
- MySQL 5.6 2000万行高频读写表新增字段示例
- MySQL中采用VARCHAR字段进行日期筛选的最佳实践
- MySQL EXPLAIN 中 type 字段示例详解
- mysql实现动态查询表字段方式(得到JSON格式)