首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Bash:选择结构之case

case与if if用于选择的条件,不是很多的情况,如果选择的条件太多,一系列的if,elif,,也是醉了。没错,case在bash中的地位,和switch在C中的地位一样。但是用法可大有不同。...但是在选择结构中是相同的——反语。if结构使用if...fi标识一个代码块的作用域,而case也是用case...esac表示块作用域的。。 基本结构 看例子echo.sh: #!...这里,你只需要知道,条件语句以 ;;& 结束的时候,程序执行到这里不会停止,会继续测试下面条件,如果满足继续执行,直到遇到 ;; esac ?...不过case语句中与正则表达式略有不同。貌似支持的并不完整。 *是匹配0个多个任何字符。 ?是匹配一个字符。可以看做一个占位符。 [ ]表示一个范围。 ( )枚举字符串。但是需要转义 #!...;;& [0-9])echo "匹配[0-9]";; esac 方括号表示范围,你可以使用[123]来匹配123,而不是123。

88010
您找到你想要的搜索结果了吗?
是的
没有找到

java case when用法_sql case when 嵌套

前几天在客户环境遇到一个Spark “CASE WHEN”语句的性能优化问题。 客户那边通过一个“时间范围筛选”控件来动态修改图表的数据。...CASE WHEN语句有些类似于编程语言中的Switch语句,当这里的 WHEN从句只有一个的时候,可以简化为IF语句(或者 IF-ELSE 语句)。...于是想:对于Spark(客户用的是2.4.x版本), Spark会不会把这种只有一个WHEN分支的 CASE WHEN 语句优化为IF语句呢?...于是试了一下性能,发现如果修改上面的SQL为: IF(`bizdate` BETWEEN ‘2020-09-06’ AND ‘2020-09-13’, `sales_amount`, 0 ) 那么执行速度将减少为原来的一半...首先、这个应该是一个比较简单的优化,比如我是否可以通过增加一个Spark的优化器规则,来自动把一个分支的CASE WHEN转为IF,看着好像不难。

3K30

SQL CASE 表达式

因为本身表达式就支持聚合函数,比如下面的语法,我们不会觉得奇怪: SELECT sum(pv), avg(uv) from test 本身 SQL 就支持多种不同的聚合方式同时计算,所以将其用在 CASE...这个特性可以解决很多实际问题,比如将一些复杂聚合判断条件的结果用 SQL 结构输出,那么很可能是下面这种写法: SELECT CASE WHEN 聚合函数(字段) 符合什么条件 THEN xxx ......可以写在 SQL 查询的几乎任何地方,只要是可以写字段的地方,基本上就可以替换为 CASE 表达式。...除了 SELECT 外,CASE 表达式还广泛应用在 INSERT 与 UPDATE,其中 UPDATE 的妙用是不用将 SQL 拆分为多条,所以不用担心数据变更后对判断条件的二次影响。...讨论地址是:精读《SQL CASE 表达式》· Issue #404 · ascoders/weekly

78130

SQLCASE WHEN用法详解

简单CASE WHEN函数: CASE SCORE WHEN 'A' THEN '优' ELSE '不及格' END CASE SCORE WHEN 'B' THEN '良' ELSE '不及格' END...CASE SCORE WHEN 'C' THEN '中' ELSE '不及格' END 等同于,使用CASE WHEN条件表达式函数实现: CASE WHEN SCORE = 'A' THEN '优...NUMBER 简单CASE WHEN函数只能应对一些简单的业务场景,而CASE WHEN条件表达式的写法则更加灵活。...WHEN score IS NULL THEN '缺席考试' ELSE '正常' END 场景2:现老师要统计班中,有多少男同学,多少女同学,并统计男同学中有几人及格,女同学中有几人及格,要求用一个SQL...MALE_COUNT FEMALE_COUNT MALE_PASS FEMALE_PASS 3 3 1 3 场景3:经典行转列,并配合聚合函数做统计 现要求统计各个城市,总共使用了多少水耗、电耗、热耗,使用一条SQL

57720

SQL | CASE WHEN 实战 -- 转置财报

知识储备 年月销量数据表 sales SQL 编辑器(笔者 dbForge Studio) SQL 基本知识(SELECT, GROUP BY, AS, 聚合函数SUM) 业务背景 转置财务报表,将源数据以更简洁明了的形式呈现给同事...WHEN SQL 中每一种函数的妙用都有很多,这里根据业务需求,有一说一,只分享 CASE WHEN 的冰山一角。...SQLCASE WHEN 与编程语言中的 if-else 结构非常相似,而该函数又分为 ‘ 简单 CASE ’ 与 ‘ 搜索 CASE ’ 两种,‘ 搜索 CASE‘ 功能更强大(其实也已经包括了简单...CASE 的内容),通常直接用 ’ 搜索 CASE ‘ 就可以了。...(考察业务背景和知识面) 后记 SQLCASE WHEN 的作用远不止于此,还有非常多的骚操作,熟练掌握可大大提高 SQL 取数的工作效率,加油

1K10

SQL面试必刷题(1) Case When

SQL语言是每个开发人员必备的一种技能,本文对面试过程中常见的SQL面试题进行分类、汇总,每类题型包括一些例题,希望大家能够举一反三。 01 Case When 是什么?...(2) CASE函数只返回第一个符合条件的值,剩下的CASE部分被自动忽略。 02 面试题 1....有一个表table1(A,B,C),用SQL语句选出两个列,第一列是A、B两列的较大者,第二列是B、C两列的较小者。...有一张表table2(语文成绩、数学成绩、英语成绩),请用一条sql语句按以下显示条件得出结果: 显示条件:大于等于80显示为优秀,大于等于60表示及格,小于60分表示不及格。...根据条件有选择的UPDATE # 根据现有工资更新工资: UPDATE Personnel SET salary = CASE WHEN salary >= 5000 THEN salary * 0.9

1.5K40

MySQL增删改查_sql where case when

,用于抛出一个异常错误。这个错误可以被程序捕捉到。...若要使用 19 到 25 之间的严重级别,必须选择 WITH LOG 选项。...所有的对应关系如下: 1,%d%i代表有符号整数 2,%u代表无符号整数 3,%o代表无符号八进制数 4,%s代表字符串 5,%x%X代表 无符号十六进制数 五、[ WITH option [ ,…...n ] ] 该参数为错误的自定义选项,可以是下面三个值中的一个: 1,LOG–在 Microsoft SQL Server 数据库引擎 实例的错误日志和应用程序日志中记录错误。...server数据库中raiserror函数用法的详细介绍的文章就介绍到这了,更多相关sql server中raiserror函数用法内容请搜索WEB开发者以前的文章继续浏览下面的相关文章希望大家以后多多支持

78120
领券