sql中case when多种用法-SQL

admin1年前 (2024-06-05)基础运维知识293
点击下载TXT

SQL 中 CASE WHEN 的多种用法

CASE WHEN 语句在 SQL 中用于根据指定的条件返回不同的值。它是一种强大的工具,可以执行各种数据转换和查询操作。

基本用法

最基本的形式如下:

CASE WHEN <condition> THEN <value_if_true> ELSE <value_if_false> END</value_if_false></value_if_true></condition>
登录后复制
  • 要评估的条件。
  • 如果条件为 true 时要返回的值。
  • 如果条件为 false 时要返回的值。

多重条件

CASE WHEN 语句可以处理多个条件,如下所示:

CASE
    WHEN <condition1> THEN <value_if_true1>
    WHEN <condition2> THEN <value_if_true2>
    ...
    ELSE <value_if_no_match>
END</value_if_no_match></value_if_true2></condition2></value_if_true1></condition1>
登录后复制

搜索特定值

CASE WHEN 语句可用于搜索特定值,如下所示:

CASE <expression>
    WHEN <value1> THEN <value_if_found1>
    WHEN <value2> THEN <value_if_found2>
    ...
    ELSE <value_if_not_found>
END</value_if_not_found></value_if_found2></value2></value_if_found1></value1></expression>
登录后复制

转换数据类型

CASE WHEN 语句可用于将数据从一种类型转换为另一种类型,如下所示:

CASE <expression>
    WHEN <value1> THEN CAST(<expression> AS <new_type>)
    ...
    ELSE CAST(<expression> AS <new_type>)
END</new_type></expression></new_type></expression></value1></expression>
登录后复制

应用到多个列

CASE WHEN 语句可以应用到多个列,如下所示:

SELECT
    CASE <condition> THEN <value_for_column1> ELSE <value_for_column2> END AS <new_column_name>,
    ...
    CASE <condition> THEN <value_for_columnn> ELSE <value_for_columnn> END AS <new_column_name>
FROM <table_name>;</table_name></new_column_name></value_for_columnn></value_for_columnn></condition></new_column_name></value_for_column2></value_for_column1></condition>
登录后复制

取代 NULL 值

CASE WHEN 语句可用于取代 NULL 值,如下所示:

CASE
    WHEN <expression> IS NULL THEN <value_to_replace>
    ELSE <expression>
END</expression></value_to_replace></expression>
登录后复制

相关文章

sql多条件查询怎么写-SQL

SQL 多条件查询 多条件查询是指在一个 SQL 语句中使用多个条件来筛选数据。 语法: SELECT column1, column2, ... FROM table_name WHERE con...

mysql设置外键怎么写-mysql教程

如何设置 MySQL 外键 在 MySQL 中设置外键可以确保数据完整性,它强制执行父子表之间的引用关系。 语法 ALTER TABLE 子表 ADD FOREIGN KEY (子表列) REFER...

sql语句排序怎么按时间-SQL

SQL 语句按时间排序 在 SQL 中,您可以使用 ORDER BY 子句按时间对结果进行排序。 语法: SELECT column_name(s) FROM table_name ORDER BY...

sql游标怎么写-SQL

SQL 游标 什么是 SQL 游标? SQL 游标是一个用于管理和遍历结果集的结构。它允许应用程序从结果集中向上、向下或随机移动并检索数据。 如何写 SQL 游标? 声明游标: DECLARE cu...

sql分页查询语句怎么写-SQL

SQL 分页查询语句详解 分页查询是数据查询中常用的操作,它可以将查询结果分成多个页面,方便用户查看和操作。SQL 中分页查询的实现需要用到 LIMIT 和 OFFSET 子句。 语法: SELEC...

sql时间怎么比较-SQL

SQL 中比较时间的两种方法 在 SQL 中,比较时间可以使用以下两种方法: 1. 直接比较 直接比较是最简单的方法,它将两个时间值直接比较。如果两个值相等,则返回 true,否则返回 false。...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。