SQL-每日一题【627. 变更性别】

题目

Salary 表:

请你编写一个 SQL 查询来交换所有的 'f' 和 'm' (即,将所有 'f' 变为 'm' ,反之亦然),仅使用 单个 update 语句 ,且不产生中间临时表。

注意,你必须仅使用一条 update 语句,且 不能 使用 select 语句。

查询结果如下例所示。

示例 1:

解题思路

1.题目要求我们将性别进行变更,也就是交换所有的 'f' 和 'm' 。并且不可以用 select 语句,那我们就利用 update 和 case 函数去实现。

2.我们先利用 case 函数 将性别为 'm' 的变为 'f' ,性别为'f'的变为 'm',然后更新到 salary 表的 sex 属性中即可。

代码实现

sql 复制代码
update salary 
 set sex = ( 
     case sex when 'm' then 'f' else 'm' end);

测试结果

相关推荐
rfidunion22 分钟前
busybox1.20.2编译过程
数据库
_codemonster42 分钟前
JavaWeb开发系列(八)数据库环境配置
数据库
小刘的大模型笔记1 小时前
向量数据库实战指南:从部署到RAG落地
数据库
Hello.Reader1 小时前
从 0 到 1 理解硬盘数据恢复工具原理与工程实现
linux·运维·服务器·网络·数据库
前路不黑暗@1 小时前
Java项目:Java脚手架项目的地图服务(十)
java·数据库·spring boot·笔记·学习·spring cloud·maven
世界尽头与你2 小时前
MySQL 三大日志(binlog、redo log 和 undo log)深度解析
数据库·mysql
a285282 小时前
MS SQL Server 实战 统计与汇总重复记录
数据库·oracle
tod1132 小时前
深入理解 Redis 事务:从原理到实践的完整解析
数据库·redis·缓存
升职佳兴2 小时前
SQL 窗口函数入门教程基础篇
数据库·sql
dreams_dream3 小时前
MySQL 主从复制(小白友好 + 企业级)
android·数据库·mysql