SQL 之 CASE WHEN 修改查询数据,不符合修改条件的部分则保持不变

2023-05-16

Q: Region is a mix of abbreviations and full names. Fix up the remaining regions by converting the full names to their corresponding abbreviations (e.g., South Australia -> SA). Can you work out how to do this using a single query?

区域是由缩写和全名混合而成的。通过将全名转换为相应的缩写 (例如,South Australia -> SA) 来修复其余区域。你能想出如何使用一个单一的查询来做到这一点吗?

如果运行以上语句将会出现一个错误,

Cannot insert the value NULL into column 'region', table 'AmazonOrders.dbo.Addresses'; column does not allow nulls. UPDATE fails.
 

这是因为先前建表时设置 region 的内容不能为空

注意

CASE WHEN THEN ELSE END

可以不写else但是一定要有end ,没有else如果不满足条件会以null填充

解决方法: 

为使其余值保持不变,加入 ELSE column 语句

本例中为 ELSE region:

查看修改结果:

SELECT column FROM Table

​​

 

​​

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL 之 CASE WHEN 修改查询数据,不符合修改条件的部分则保持不变 的相关文章

  • 比较字符串结尾的最佳方法是使用 RIGHT、LIKE 还是其他?

    我需要将字符串的结尾与存储过程中可能的结尾列表进行比较 会被叫很多 大概有10 15个候选结局 此时 仅使用代码的解决方案比创建专用于此的表更好 类似的东西 IF ENDSWITH var foo OR ENDSWITH var bar O
  • 在没有条件的情况下,如何使查询不返回任何内容?

    相当简单 我有一对多 多对一关系 我想查询它 但是 当未提供任何 WHERE 子句信息时 我不希望返回任何结果 简单来说 如何使查询变得非贪婪 您可以添加一个始终为 false 的 where 子句 并附加您想要用 OR 提供的条件 sel
  • Python Peeweeexecute_sql() 示例

    我使用 Peewee 模块作为我的项目的 ORM 我看了整个文档 没有明确的 有关如何处理 db execute sql 结果的示例 我跟踪代码 只能发现db execute sql 返回游标 有谁知道如何处理光标 例如迭代它并获取 返回复
  • 如何从 T-SQL 中的“/”分隔字符串中获取几乎最后一个子字符串?

    如果我有一个由用 字符分隔的其他字符串 xxx xxx xxx xxxx 组成的字符串 如何使用 t sql 获取最后一个和几乎最后一个 最后一个之前的 部分 它可能应该是 charindex 和 right 的某种组合 declare s
  • 授予对视图的 SELECT 权限,但不授予对基础对象的 SELECT 权限

    我经常读到 视图的目的之一是安全性 允许某些用户访问基础表 而其他用户仅访问派生视图 考虑到这一点 我设计了几个向外部用户提供受限数据集的视图 一切都很好 但在实践中这是行不通的 我授予后SELECT对视图的权限 除非我授予 否则用户无法访
  • SQL Server在查询执行后不释放内存

    我想我在这里有一个很多人可能遇到过的基本问题 当我在 SQL Server 中运行查询时 它将在内存中加载查询执行所需的所有数据 例如 如果存在联接 那么它将从这两个表加载必要的数据 但是当查询完成执行内存时SQL Server 消耗的数据
  • 在数据库中存储多维数组:关系数组还是多维数组?

    我读过很多类似的帖子多维到单维 多维数据库等等 但没有一个答案有帮助 我确实在谷歌上找到了很多文档 但只提供了背景信息 并没有回答手头的问题 我有很多彼此相关的字符串 PHP 脚本中需要它们 结构是分层的 这是一个例子 A AA AAA A
  • SQL SERVER 字符串中的掩码字符

    如何替换 SQL SERVER 中字符串中 x 和 y 字符之间的字符 例如 如果我有 TEST123456 最后有 TE 56 我不知道字符串有多长 但我知道我需要屏蔽字符串中 x 和 y 之间的字符 你可以使用REPLICATE htt
  • MySQL:选择 DISTINCT / UNIQUE,但返回所有列?

    SELECT DISTINCT field1 field2 field3 FROM table 我正在尝试完成以下 SQL 语句 但我希望它返回所有列 这可能吗 像这样的东西 SELECT DISTINCT field1 FROM tabl
  • 获取SSAS立方体上次处理时间

    在 Excel 中 我与数据多维数据集建立 Analysis Services 连接 我希望能够通过向用户显示最后一次多维数据集处理时间发生的时间来向用户展示数据的最新情况 在 SQL Server Management Studio SS
  • 如何在 Presto 中删除重复数据

    我有一个 Presto 表 假设它有 id name update time 列和数据 1 Amy 2018 08 01 1 Amy 2018 08 02 1 Amyyyyyyy 2018 08 03 2 Bob 2018 08 01 现在
  • 仅从 MySQL 中的日期时间 (YYYY-MM-DD HH:MM:SS) 中选择不同的日期

    执行此命令会带来以下结果 所有列中的所有日期 因此它本质上与 SELECT date 执行相同的操作 没有不同 SELECT DISTINCT date FROM daily ORDER BY date DESC 2013 02 12 16
  • 我忘记了分号“;”在 MySQL 终端查询中。我该如何退出?

    有时我忘记用分号 结束 SQL 查询 在我的 Mac 终端中 发生这种情况时 终端会设置一个 gt 一开始我无法退出此命令或运行任何其他 SQL 命令 我该如何退出 你不知道mysql终端有5种不同的报价模式 我建议你回顾一下它们 http
  • 将 List 保存到 ASP.NET 中的会话

    购物车项目保存在 SQL 数据库中 我想将所有 CartItems 放在一个 List 中并转移到 Instance Items The Instance变量正在保存到会话中 代码如下 public class ShoppingCart p
  • 按 1.99.10 和 1.99.9 sql server 排序

    抱歉我的错误 我应该提供问题的真实样本 我的 ID 中包含以下字符 示例代码 select ID from student order by ID Expected output from mine but system output JA
  • 如何使用过程更改列的默认值

    这是我当前的 SQL 的样子 DELIMITER CREATE PROCEDURE updateDefaultUserRole IN rid in INT BEGIN ALTER TABLE users MODIFY rid INT 255
  • 在自引用表中查询父项和子项

    我有一个Comments如下表所示 在MySQL content created at id parent id second comment 2014 06 03T10 08 44 0000 37 1 third comment 2014
  • 加入多对多关系

    我有三个表 applications permissions 和 applications permissions applications applications permissions permissions id lt applic
  • 在sql server中透视固定的多列表

    我有一个需要为报告服务进行旋转的表格 DateCreated Rands Units Average Price Success Unique Users 2013 08 26 0 0 0 0 0 2013 08 27 0 0 0 0 0
  • mysql 查询从给定的表结构创建 SEO 友好的 url

    我正在尝试使用下表创建 SEO 友好的 URL 类别表 http sqlfiddle com 2 c474a 4 页表 http sqlfiddle com 2 c474a 5 我正在尝试编写一个 mysql 查询 该查询将使用产生以下输出

随机推荐

  • Java IO流 实现文件复制

    Java IO流 实现文件复制 思路 1 将指定文件转换成输入流 2 创建数组接收输入字节 3 将文件复制想要存放的轮径创建输出流 4 将输入流的字节输出出去 实现 span class token comment 创建输入和输出流 spa
  • Python之文件读写

    1 写文件 f 61 open 39 out txt 39 39 w 39 f write 39 s d d d d 0 0 0 0 0 0 0 39 bbx name bbx x bbx y bbx w bbx h f close 2 读
  • Java 基于TCP的socket实现文件传输

    Java 基于TCP的socket实现文件传输 基于TCP的socket结合java的io流 实现客户端与服务器之间的文件传输 Socket 套接字 xff08 socket xff09 是一个抽象层 xff0c 应用程序可以通过它发送或接
  • MySQL索引的创建与使用

    索引的分类 在学习如何创建索引之前 xff0c 先了解一下索引的分类 MySQL中分为 xff1a 普通索引 xff0c 唯一索引 xff0c 主键索引 xff0c 组合索引 xff0c 和全文索引 index name xff1a 索引名
  • ThreadLocal类

    ThreadLocal类 什么是ThreadLocal为什么ThreadLocal是线程安全的呢 什么是ThreadLocal ThreadLocal可以简单的理解为他其实就是一个工具类 xff0c 用来存储线程局部变量的一个工具类 xff
  • spring boot 访问HTML

    HTML整合spring boot 简介默认文件路径访问自定义文件路径访问 或通过Controller控制器层跳转访问 简介 SpringBoot默认的页面映射路径 xff08 即模板文件存放的位置 xff09 为 classpath te
  • HTML重定向解析ModelMap

    HTML实现重定向解析ModelMap 日常开发中 很多场景需要跳转页面 xff0c 又要携带参数 xff0c 重定向就可以起到很好的作用 业务场景 xff1a 登录成功后展示用户信息 登录页面输入用户名 密码进行登录访问 span cla
  • RHCE-ansible(一)--- 安装ansible、主机清单、sudo提权、特权升级

    目录 一 环境配置 1 配置三个主机 etc hosts 文件 xff0c 实现通过域名访问 2 配置SSH远程免密连接 2 1 在控制主机生成密钥 2 2 发送公钥到受控主机 二 受控主机 xff08 xixi xff09 安装ansib
  • 针对opencv导入Android studio不成功的解决办法?

    一 问题如下 xff1a AS gt File gt New gt Import Module 选择导入 压缩包路径 sdk java文件夹 xff0c 然后发现AS没有下一步 xff1f 二 解决办法 新建一个项目 在新建项目下创建一个包
  • Attempt to invoke virtual method ‘void android.widget.TextView.setText(java.lang.CharSequence)‘ on a

    问题简述 xff1a Attempt to invoke virtual method 39 void android widget TextView setText java lang CharSequence 39 on a null
  • WebRTC使用Linux搭建服务器(二)

    搭建服务器流程 xff1a 注意 xff1a 每个人搭建服务器可能会出现奇奇怪怪的问题 xff0c 照着我的方法可能会出现其他问题 xff0c 不要着急 xff0c 耐心搭建 xff0c 确实比较烦 1 安装JDK apt get upda
  • Java基础——有无参数和有无返回值

    一 有无参数 有参数 xff1a 小括号里面有内容 xff0c 当一个方法需要一些数据条件 xff0c 才能完成任务的时候 xff0c 就是有参数 例如两个数字相加 xff0c 必须知道两个数字各自有多少 xff0c 才能相加 无参数 xf
  • STM32学习:利用寄存器点亮LED

    使用普中PZ6806L开发板 由对应的LED模块的电路可知 xff0c 要想点亮一个LED xff0c 就要将其对应的引脚输出低电平 要使用寄存器 xff0c 首先要对其进行封装 xff0c 具体代码如下 xff1a define PERI
  • java基础——求数组长度、遍历数组、求最值和数组元素反转

    一 求数组长度 获取数组的长度的格式 xff1a 数组名称 length 这将会得到一个int数字 xff0c 代表数组的长度 数组一旦创建 xff0c 程序运行期间 xff0c 长度不可改变 代码如下 xff1a public class
  • java基础—Random

    一 概述 Random 类用来生成随机数字 xff0c xff0c 使用起来也是三个步骤 xff1a 1 导包 2 创建 Random r 61 new Random 小括号留空即可 3 使用 获取一个随机数的int的数字 范围是int所有
  • ffmpeg播放器(二)音频解码与播放

    音频解码和播放的前面准备工作和视频的格式差不多 xff0c 创建两个线程分别解码和播放 xff0c 这里统一只放代码了 void AudioChannel play 设置为播放状态 packets setWork 1 frames setW
  • RTMP直播推流(一)视频推流

    关于cmakeList的配置 xff0c 这里就直接给出代码 xff1a cmake minimum required VERSION 3 4 1 引入指定目录下的CMakeLists txt add subdirectory src ma
  • RTMP直播推流(二)音频推流

    音频推流java层代码 xff1a package com example push channel import static android media AudioFormat CHANNEL IN STEREO import andr
  • SpringBoot查询数据时报空指针异常

    我的问题是 64 Test包导入错误 是这个包不是另外一个
  • SQL 之 CASE WHEN 修改查询数据,不符合修改条件的部分则保持不变

    Q Region is a mix of abbreviations and full names Fix up the remaining regions by converting the full names to their cor