标签:CASE 语句 数据库 返回 WHEN ELSE SQL
SQL CASE语句的使用
CASE是一个控制流语句,其作用与IF-THEN-ELSE语句非常相似,可根据数据选择值。 CASE语句遍历条件并在满足第一个条件时返回值。 因此,一旦条件成立,它将短路,从而忽略后面的子句并返回结果。 正如我们在今天的博客中看到的那样,它可以用来测试条件和离散值。
基本语法
CASE语句有两种形式:
第一种评估一个或多个条件,并返回第一个符合条件的结果。 如果没有条件是符合的,则返回ELSE子句部分的结果,如果没有ELSE部分,则返回NULL:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN conditionN THEN resultN
ELSE result
END;
第二种CASE句法返回第一个value = compare_value比较结果为真的结果。 如果没有比较结果符合,则返回ELSE后的结果,如果没有ELSE部分,则返回NULL:
CASE compare_value
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN conditionN THEN resultN
ELSE result
END;
示例:
要尝试使用CASE语句,我们将使用Navicat Premium编写一些针对Sakila示例数据库的查询。 它是一个功能强大的数据库开发和管理工具,可以同时连接到大多数主流的数据库,其中包括MySQL、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL、以及SQLite数据库。 它还兼容许多云数据库,例如Amazon RDS、Amazon Aurora、Amazon Redshift、Microsoft Azure、Oracle Cloud、Google Cloud、以及MongoDB Atlas。
语法1
这是一个选择电影标题以及它们的发行年份和租赁价格列表的查询:
我们将添加一个列,将租赁价格分为三类:“discount”,“regular”和“premium”。 价格范围是:
低于2.99美元
2.99-4.99美元之间
4.99美元或以上
声明:本人只是为了个人学习所用。
标签:CASE,语句,数据库,返回,WHEN,ELSE,SQL 来源: https://www.cnblogs.com/little-monster-lhq/p/16676170.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。