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);

测试结果

相关推荐
数据库人生8 小时前
Oracle RANGE分区表 HIGH_VALUE 获取
数据库·oracle·dbms_xmlgen·high_value
他们叫我技术总监8 小时前
Oracle 11g 实战进阶:LONG类型字段超长模糊查询终极方案(附表空间GB级监控优化)
数据库·oracle
华章酱8 小时前
MySQL EXPLAIN 完全解读:从执行计划到索引优化
android·数据库·mysql
云游云记9 小时前
php crm客户属性字段变更记录:业务合规与数据可信的核心保障
sql·php·crm
木子02049 小时前
sql 计算年龄
数据库·sql
Coder_Boy_9 小时前
【Java核心】企业级高并发系统底层设计思想
java·前端·数据库·spring boot·高并发
知识即是力量ol9 小时前
口语八股:Redis 面试实战指南——基础篇、持久化篇
数据库·redis·面试·八股
学到头秃的suhian9 小时前
Redis的Java客户端
java·数据库·redis
yueyin1234569 小时前
在Django中安装、配置、使用CKEditor5,并将CKEditor5录入的文章展现出来,实现一个简单博客网站的功能
数据库·django·sqlite
人间打气筒(Ada)9 小时前
SQL Server 之创建和管理数据表
运维·服务器·数据库·windows·sql语句·sql server·windows server