第153章 SQL函数 UCASE

99 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情

第153章 SQL函数 UCASE

将字符串中的所有小写字母转换为大写字母的大小写转换函数。

大纲

UCASE(string-expression)

{fn UCASE(string-expression)}

参数

  • string-expression - 要将其字符转换为大写的字符串。表达式可以是列名、字符串文字或另一个标量函数的结果,其中基础数据类型可以表示为任何字符类型(例如 CHARVARCHAR)。

描述

UCASE 将小写字母转换为大写以进行显示。它对非字母字符没有影响;它保留不变的数字、标点符号和前导或尾随空格。

请注意,UCASE 可用作 ODBC 标量函数(使用花括号语法)或 SQL 通用函数。

UCASE 不强制将数字解释为字符串。 SQL 从数字中删除前导零和尾随零。指定为字符串的数字保留前导零和尾随零。

UCASE 不影响排序规则。 %SQLUPPER 函数是 SQL 中为不区分大小写的排序规则转换数据值的首选方法。

也可以使用 UPPER() 方法调用从 ObjectScript 调用此函数:

$SYSTEM.SQL.UPPER(expression)

示例

以下示例以大写字母返回每个人的姓名:

SELECT Name,{fn UCASE(Name)} AS CapName
     FROM Sample.Person

image.png

UCASE 也适用于 Unicode(非 ASCII)字母字符,如下面的嵌入式 SQL 示例所示,它将希腊字母从小写转换为大写:

/// d ##class(PHA.TEST.SQLFunction).UCase()
ClassMethod UCase()
{
	s a=$CHAR(950,949,965,963)
	&sql(
		SELECT 
			UCASE(:a)
		INTO 
			:b
		FROM 
			Sample.Person
	)
	if SQLCODE '= 0 {
		w !,"Error code ",SQLCODE 
	} else {
		w !,a,!,b 
	}
}
DHC-APP>d ##class(PHA.TEST.SQLFunction).UCase()
 
ζευσ
ΖΕΥΣ

设计模式发展历史

首先,来看一下什么是设计模式,我们先了解一下设计模式的发展历史,1987年肯特·贝克和沃德·坎宁安首次提出了设计模式的思想,一年后,也就是1988年,Erich Gamma开始尝试把这种思想改写适用于软件开发,James Coplien 在1989年至1991 年也在利用相同的思想致力于C++的开发,1991年,(Erich Gamma 与Richard Helm, Ralph Johnson ,John Vlissides)GoF四人帮 合作出版了Design Patterns ,在此书中共收录了23个设计模式。他们在此书中的协作实现了软件设计模式的突破,该书首次提到了软件开发中设计模式的概念。