专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

decode函数是什么意思,decode函数用法

来源:小易整编  作者:小易  发布时间:2023-03-23 11:06
摘要:decode函数是什么意思,decode函数用法第五十一章SQL函数DECODE计算给定表达式并返回指定值的函数。大纲DECODE(expr ,search,result[,default])参数expr -要解码的表达式。search...

decode函数是什么意思,decode函数用法

第五十一章 SQL函数 DECODE

计算给定表达式并返回指定值的函数。

大纲

DECODE(expr {,search,result}[,default])

参数

  • expr - 要解码的表达式。

  • search - 要与Expr进行比较的值。

  • result - Expr匹配搜索时返回的值。

  • default - 可选-如果expr与任何搜索都不匹配,则返回默认值。

描述

可以指定多个搜索和结果对,以逗号分隔。您可以指定一个默认值。DECODE表达式(包括EXPR、SEARCH、RESULT和DEFAULT)中的最大参数数约为100。搜索、结果和默认值可以从表达式派生。

为了计算DECODE表达式,会逐个将expr与每个搜索值进行比较:

  • 如果expr等于search ,则返回相应的结果。

  • 如果expr不等于search ,则返回默认值,如果省略默认值,则返回NULL。

仅在将search与Expr进行比较之前计算每个search,而不是在将所有search与Expr进行比较之前评估所有search。因此,如果上一次搜索等于EXPR,不会对搜索求值。

在DECODE表达式中,将两个NULL视为等效。如果expr为NULL,则将返回同样为NULL的第一次搜索结果。

请注意,为了与Oracle兼容,支持解码。

返回值的数据类型

DECODE返回第一个结果参数的数据类型。如果无法确定第一个结果参数的数据类型,则DECODE返回VARCHAR。对于数值,DECODE从所有可能的结果参数值返回最大长度、精度和小数位数。

如果结果和默认值的数据类型不同,则返回的数据类型是与所有可能的返回值最兼容的类型,即具有最高数据类型优先级的数据类型。例如,如果结果是整数,默认值是小数,则DECODE返回一个带有数据类型数字的值。这是因为数字是与两者兼容的最高优先级的数据类型。

示例

下面的例子将13到19岁的年龄“decodes”为“Teen”; 默认为“Adult”:

SELECT Name,Age,DECODE(Age,
       13,'Teen',14,'Teen',15,'Teen',16,'Teen',
       17,'Teen',18,'Teen',19,'Teen',
       'Adult') AS AgeBracket
FROM Sample.Person
WHERE Age > 12

decode函数是什么意思,decode函数用法

下面的示例对空值进行解码。如果FavoriteColors没有值,DECODE将它替换为字符串' no Preference '; 否则,它返回FavoriteColors值:

SELECT Name,DECODE(FavoriteColors,
                   NULL,'No Preference',
                   $LISTTOSTRING(FavoriteColors,'^')) AS ColorPreference
FROM Sample.Person
ORDER BY Name

decode函数是什么意思,decode函数用法

下面的示例解码颜色首选参数。如果此人只有一种最喜欢的颜色,则该颜色名称将被字母缩写替换。如果用户有多个最喜欢的颜色,则DECODE返回FavoriteColors值:

SELECT Name,DECODE(FavoriteColors,
                   $LISTBUILD('Red'),'R',
                   $LISTBUILD('Orange'),'O',
                   $LISTBUILD('Yellow'),'Y',
                   $LISTBUILD('Green'),'G',
                   $LISTBUILD('Blue'),'B',
                   $LISTBUILD('Purple'),'V',
                   $LISTBUILD('White'),'W',
                   $LISTBUILD('Black'),'K',
                   $LISTTOSTRING(FavoriteColors,'^')) 
FROM Sample.Person
WHERE FavoriteColors IS NOT NULL
ORDER BY FavoriteColors

decode函数是什么意思,decode函数用法

请注意,ORDER BY子句按原始字段值排序。以下示例按解码值排序:

SELECT Name,DECODE(FavoriteColors,
                   $LISTBUILD('Red'),'R',
                   $LISTBUILD('Orange'),'O',
                   $LISTBUILD('Yellow'),'Y',
                   $LISTBUILD('Green'),'G',
                   $LISTBUILD('Blue'),'B',
                   $LISTBUILD('Purple'),'V',
                   $LISTBUILD('White'),'W',
                   $LISTBUILD('Black'),'K',
                   $LISTTOSTRING(FavoriteColors,'^')) AS ColorCode
FROM Sample.Person
WHERE FavoriteColors IS NOT NULL
ORDER BY ColorCode

decode函数是什么意思,decode函数用法

下面的示例将“Employee”记录中的“Company code”字段中的数字代码进行解码,并返回相应的部门名称。如果员工的公司代码不是1到10,DECODE返回默认的“Admin(non-tech)”:

SELECT Name,
DECODE (Company,
   1, 'TECH MARKETING', 2, 'TECH SALES', 3, 'DOCUMENTATION', 
   4, 'BASIC RESEARCH', 5, 'SOFTWARE DEVELOPMENT', 6, 'HARDWARE DEVELOPMENT',
   7, 'QUALITY TESTING', 8, 'FIELD SUPPORT', 9, 'PHONE SUPPORT',
   10, 'TECH TRAINING',
       'Admin (non-tech)') AS TechJobs
FROM Sample.Employee WHERE Company<10

decode函数是什么意思,decode函数用法

该表达式使用Company作为expr参数,并使用10对搜索和结果参数。默认参数为“Admin(non-tech)”。


本文地址:百科问答频道 https://www.neebe.cn/wenda/937114.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • 销售额是什么意思?

    销售额是什么意思?

    销售额是指商业企业的一项关键指标,代表企业在一定时期内的营业额,它实时反映企业经营活动的情况,是衡量企业经营能力和效益的重要指标。销售额可以有多种形式,如零售销售额、批发销售额和出口销售额等。销售额的计算方法很简单,即:销售额=销售数量...

  • iTools是什么意思?

    iTools是什么意思?

    iTools是一款功能强大的苹果设备管理工具。它为苹果设备用户提供了便捷的设备管理功能,包括文件传输、备份还原、应用程序管理、屏幕截图、屏幕录制、音乐管理、视频管理等多种功能,而且支持所有的i系列设备,例如iPod、iPhone和iPad...

  • 无损分区工具是什么意思?

    无损分区工具是什么意思?

    无损分区工具是一种硬盘分区方式,是指在分区时保持原有数据不受损坏的一种分区技术,这种分区技术称为“无损分区”。无损分区可以保护硬盘上的数据,在分区时不会破坏硬盘上的任何数据。而且,在数据安全性上也有一定的优势,因为它不会破坏的数据,因此可...

  • 消费凭证是什么意思?

    消费凭证是什么意思?

    消费凭证是指一种书面的证明凭证,当消费者购买商品或服务时,商家会向其提供消费凭证,凭此凭证可以证明消费者购买了特定的商品或服务,以及在这次购买中耗费的钱财数额。消费凭证是一种用于表示购买交易的依据,是为消费者提供全面鉴证的凭证。它可以表明...

  • DSM系统是什么意思?

    DSM系统是什么意思?

    DSM是一种新晋的分布式、可扩展的模块化系统。它是以无服务器、全节点一致性的系统架构为基础,采用多进程系统将服务、运维功能以模块化的方式集合到一起而不会配置服务的的系统设计模型。DSM的核心特点在于采用了一致性的分布式架构,模块化的结构,...

  • 裸金属是什么意思?

    裸金属是什么意思?

    简而言之,裸金属是指被提取出来,没有被添加任何基材的未加工金属。它是将矿石熔化下去后提炼出来的金属,用来做各种活动和企业的原材料。裸金属通常是一种切削或加工的未经热处理的金属。裸金属一般不经过任何表面处理,以自身属性状态出售。它不会涂以油...

  • CVSS是什么意思?

    CVSS是什么意思?

    CVSS(CommonVulnerabilityScoringSystem,中文译名“公共漏洞评分系统”)是一种漏洞分级和评分系统,是由美国国家信息安全标准研究所(NIST)推行的一套机制,它利用特定的参数来构建一个漏洞评级分类体系...

  • 键盘接口是什么意思?

    键盘接口是什么意思?

    键盘接口一般是用于挂接键盘的接口。它也称为键盘插座或键盘接头,它是一个连接键盘和计算机系统之间的重要硬件部件。键盘接口可以用来接收键盘上发出信号,以便在主板上发出完整的指令。键盘接口可以分为有线和无线两种,有线键盘接口是指采用插孔的连接方...

  • 周排行
  • 月排行
  • 年排行

精彩推荐