侧边栏壁纸
  • 累计撰写 781 篇文章
  • 累计创建 1 个标签
  • 累计收到 1 条评论
标签搜索

性别取反

Dettan
2022-01-21 / 0 评论 / 0 点赞 / 48 阅读 / 886 字
温馨提示:
本文最后更新于 2022-04-30,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
一update把性别取反的6种方法

| id | name | sex | salary |
|----|------|-----|--------|
| 1  | A    | m   | 2500   |
| 2  | B    | f   | 1500   |
| 3  | C    | m   | 5500   |
| 4  | D    | f   | 500    |
要求 : 把sex列里的m和f互换
解法 : 速度从高到底
1.
异或
UPDATE salary SET sex = CHAR(ASCII(sex) ^ ASCII("m") ^ ASCII("f"));
2.
if函数
UPDATE salary SET sex = IF(sex = "m", "f", "m");
3.
ASCII函数和CHAR函数进行字母互转
UPDATE salary SET sex = CHAR(ASCII("m") + ASCII("f") - ASCII(sex));
4.
replace函数
UPDATE salary SET sex = REPLACE("fm", sex, "");
5.
case when
UPDATE salary
SET
    sex = CASE sex
        WHEN 'm' THEN 'f'
        ELSE 'm'
    END;

0

评论区