627-变更性别

变更性别

原文地址:627. 变更性别 - 力扣(LeetCode)

  • 题目如下所示

个人题解

这题比较简单,主要学习一下 MySQL 当中 caseif 的用法,值得参考。个人思考过程如下 SQL 所示

  • -- 1. 建表
    CREATE TABLE 627_salary(
    id INT auto_increment,
    name varchar(20) NOT NULL,
    sex ENUM('m', 'f') NOT NULL,
    salary INT,
    PRIMARY KEY(id)
    );
    -- 2. 编写一个 SQL 交换所有的 'f' 和 'm',仅使用单个 update 语句
    -- PS: 必须仅使用一条 update 语句,且不能使用 select 语句
    -- 方法一:使用 MySQL 的 case 语句(case 语句也可应用于查询语句)
    UPDATE 627_salary s SET s.sex = CASE s.sex
    WHEN 'm' THEN
    'f'
    ELSE
    'm'
    END;
    -- 方式二:使用 MySQL 的 if 语句
    UPDATE 627_salary s SET s.sex = IF(s.sex = 'm','f','m');
    -- 官网评论区还有个使用 ASCII 码求和的方式解决的,挺 6 的,不过仅局限于 英文字母 且是 ENUM 类型
posted @   OnlyOnYourself-Lzw  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2022-07-11 05-Nacos注册中心
2022-07-11 04-Ribbon负载均衡
2022-07-11 03-Eureka注册中心
2022-07-11 02-服务拆分和远程调用
2022-07-11 01-微服务的概念
点击右上角即可分享
微信分享提示