开发者们好!
第143章 SQL函数 TO_DATE(一)
将格式化字符串转换为日期的日期函数。
大纲
TO_DATE(date_string[,format])
TODATE(date_string[,format])
参数
date_string- 要转换为日期的字符串。基础数据类型为CHAR或VARCHAR2的字符串日期表达式。- - 可选 — 对应于 的日期格式字符串。如果省略格式,
DD MON YYYY&是默认值;此默认值是可配置的。
描述
名称 TO_DATE 和 是可互换的,并且支持 Oracle 兼容性。
TO_DATE 函数将各种格式的日期字符串转换为日期整数值,数据类型为 。它用于输入各种字符串格式的日期,并将它们存储在标准的内部表示中。 返回具有以下格式的日期:
其中 是介于 0(1840 年 12 月 31 日)和 2980013(9999 年 12 月 31 日)之间的正整数,包括端点。这表示天数。时间值被忽略。 1840 年 12 月 31 日之前的日期可以使用儒略日期来表示,如下所述。
也可以使用 方法调用从 ObjectScript 调用此函数:
$SYSTEM.SQL.Functions.TODATE(date_string,format)
在为字段提供默认值时,可以在数据定义中使用 函数。
嗨,开发者们!
看看你如何用PyODBC和Native API在Python中开发并连接到InterSystems IRIS®数据平台。
Hi, 社区!
想和大家分享一下俄罗斯论坛上的一个Debug方法。
假设我想对应用程序进行Debug,我想让它在某一行停止执行。
在代码中加入这一行:
l +d,-d
当我想在这一行中开始调试时,我在终端中屏蔽了d
USER> l +d
执行该应用程序。
应用程序在这一行停止,让我用Studio调试器连接到它。
为了释放锁,我在终端做了以下工作
还有其他好的Debug 建议吗?
InterSystems IRIS对加密、解密和哈希操作有很好的支持。在%SYSTEM.Encryption(https://docs.intersystems.com/iris20212/csp/documatic/%25CSP.Documatic…)类中,有市场上主要算法的类方法。
IRIS算法和加密/解密类型
正如你所看到的,这些操作是基于密钥的,包括3个类:
- 对称密钥: 进行加密和解密操作的部分共享同一个秘密密钥。
- 非对称密钥: 进行加密和解密操作的部分共享相同的秘密密钥进行加密。然而,对于解密,每个部分都有一个私人密钥。这个密钥不能与其他人共享,因为它是一个身份证明。
- 哈希: 当你不需要解密,而只需要加密时使用。当涉及到存储用户密码时,这是一种常见的方法。
对称和非对称加密的区别
- 对称加密使用一个单一的密钥,需要在需要接收信息的人之间共享,而非对称加密在通信时使用一对公共密钥和一个私人密钥来加密和解密信息。
- 对称加密是比较老的技术,而非对称加密则相对较新。
- 非对称加密的出现是为了补充对称加密模式中需要共享密钥的固有问题,通过使用一对公共-私有密钥来消除共享密钥的需要。
- 非对称加密比对称加密花费的时间相对较多。
有一个简单的新方法可以在Windows和Mac上的InterSystems IRIS 2019.1(和2018.1.2)的SSL/TLS配置中添加证书授权(CA)证书。 你可以通过输入以下内容要求IRIS使用操作系统的证书存储。
%OSCertificateStore
在 "包含受信任证书颁发机构X.509证书的文件 "栏中输入:%OSCertificateStore。 这里有一张如何在门户中这样做的图片:

这里有一个描述这个问题的文档链接。 它在 "包含受信任的证书颁发机构证书的文件 "的选项列表中。
这就是你需要做的所有事情! 现在,这个配置将接受由操作系统证书库中列出的任何CA颁发的证书。
在软件开发和业务集成中,规则无处不在:会员折扣的计算规则、根据消息类型和内容将其路由到不同目标系统的路由规则。还有一个规则发挥重要作用的地方- 辅助决策规则,例如临床知识库和医疗质量指标规则。
规则经常需要随业务调整和知识积累进行调整,而规则的调整是业务和行业专家定的。如果规则是以代码硬编码的,这些调整需要程序员改动,一来不直观、需要业务专家与程序员大量的沟通成本,二来硬编码改动会对应用伤筋动骨,甚至带来风险,三来没法控制新规则生效的时间 – 总不能让程序员在新规则生效的那一刻去编译和部署吧。
InterSystems规则引擎可以帮助我们解决这些问题,于构建、执行和记录消息路由规则和普通的业务规则,带给应用和集成方案充分的灵活性和可用性。甚至业务专家和临床信息学家都可以通过低代码的、图形化的规则编辑器修改规则和指定规则生效和失效时间。
InterSystems规则引擎是InterSystems IRIS数据平台和Health Connect与Ensemble集成平台的组件。创建的规则可以被单独调用,也可以被业务流程调用。
本篇介绍规则的如何使用InterSystems规则编辑器创建规则和规则引擎执行规则的逻辑。
1. 规则基本概念
在设计规则前,先了解一下规则的基本概念。
1.1 上下文
上下文是用于规则定义的数据模型。
第142章 SQL函数 TO_CHAR(三)
数字到字符串示例
以下嵌入式 SQL 示例显示了基本的数字到字符串的转换:
/// d ##class(PHA.TEST.SQLFunction).ToChar3()
ClassMethod ToChar3()
{
&sql(
SELECT
TO_CHAR(1000,'9999'),
TO_CHAR(10,'9999')
INTO
:numfull,:numshort
)
if SQLCODE '= 0 {
w !,"Error code ",SQLCODE
} else {
w !,"Formatted number:",numfull
w !,"Formatted number:",numshort
w !,"Note leading blanks"
}
}
DHC-APP>d ##class(PHA.TEST.SQLFunction).ToChar3()
Formatted number: 1000
Formatted number: 10
Note leading blank
返回具有适当数量的前导空格的指定数字。无符号正数前面总是有一个空白字符。如果指定数字的位数少于格式参数,则提供额外的前导空格。
第141章 SQL函数 TO_CHAR(二)
可以使用 TO_CHAR 将以下 tochar 表达式时间值转换为格式化的时间字符串:
$HOROLOG时间整数($HOROLOG的时间部分)。tochar-expression的值必须是有效的逻辑时间( 到 范围内的整数)。不要提供包含日期和时间组件的完整 值(例如 ); 时间转换会错误地将 的第一个(日期)组件转换为格式化的时间字符串,并忽略第二个(时间)组件。- 逻辑时间戳值。 的值必须是 数据类型(不是字符串数据类型),格式为 。时间戳的日期部分被忽略,时间部分被转换。例如, 是一个逻辑时间戳。
- 标准 ODBC 时间格式的时间值。 的值必须采用 格式,并且可以是字符串。
- 本地时间格式的时间值(使用当前 NLS 区域设置)。例如,如果 NLS
TimeSeparator设置为,则 的值可以采用 格式,并且可以是字符串。
在所有这些情况下,格式的值必须是一个只包含时间格式代码的字符串:
| Format | Code Meaning |
|---|---|
| HH | 一天中的小时(1 到 12) |
| HH12 | 一天中的小时(1 到 12) |
| HH24 | 小时(0 到 23) |
| MI | 分钟(0 到 59) |
| SS |
第140章 SQL函数 TO_CHAR(一)
将日期、时间戳或数字转换为格式化字符串的字符串函数。
大纲
TO_CHAR(tochar-expression[,format])
TOCHAR(tochar-expression[,format])
参数
tochar-expression- 要转换的逻辑日期、时间戳或数字表达式。format- 可选 — 为tochar表达式转换指定日期、时间戳或数字格式的字符代码。如果省略,TO_CHAR将 作为规范数字返回。
描述
名称 TO_CHAR 和 是可互换的,并且支持 Oracle 兼容性。
带格式的 TO_CHAR 函数有五种用途:
-
将日期整数转换为格式化的日期字符串。
-
日期在
1840年之前转换为朱利安日期int -
时间的整数转换为格式化时间生态
-
将日期和时间格式化的
datetime -
将数字转换成一个格式化的数字字符串。
这个函数也可以从调用
$SYSTEM.SQL.Functions.TOCHAR(tochar-expression,format)
第139章 SQL函数 TIMESTAMPDIFF
一个标量日期/时间函数,它返回指定日期部分的两个时间戳之间差异的整数计数。
大纲
{fn TIMESTAMPDIFF(interval-type,startdate,enddate)}
参数
interval-type- 返回值将表示的时间/日期间隔类型。startdate- 时间戳值表达式。enddate- 将与startdate进行比较的时间戳值表达式。
描述
函数返回指定日期部分间隔(秒、天、周等)的两个给定时间戳之间的差异(即,从另一个中减去一个时间戳)。返回的值是一个 ,即两个时间戳之间的这些间隔数。 (如果 早于 ,则 返回负 值。)
开始日期和结束日期是时间戳。这些时间戳可以是 数据类型格式 () 或 %Library.PosixTime 数据类型格式(编码的 位有符号整数)。
间隔类型参数可以是以下时间戳间隔之一:
-
SQL_TSI_FRAC_SECOND -
SQL_TSI_SECOND -
SQL_TSI_MINUTE
InterSystems Kubernetes Operation(IKO)3.3版现已通过WRC下载页面和InterSystems容器注册中心提供。
IKO通过提供一个易于使用的irisCluster资源定义,简化了在Kubernetes中使用InterSystems IRIS或InterSystems IRIS for Health的工作。完整的功能清单见IKO文档,包括轻松的分片、镜像和ECP的配置。
IKO 3.3 亮点:
- 支持InterSystems IRIS和InterSystems IRIS for Health 2021.2 以及 2022.1版本
- 支持 Kuberentes 1.21
- 将常见的系统警报和监控(SAM)配置作为
irisCluster的一部分进行部署 - InterSystems API Manager(IAM)现在也可以作为
irisCluster的一部分进行部署和管理 - 自动标记Mirror对的活跃端,因此服务可以始终指向激活的镜像成员
各位开发者们好,:
很高兴跟大家宣布,畅销书作家和技术专家杰弗里·摩尔将在6月22日InterSystems的全球峰会上做专题演讲。以下是他的简历:
杰弗里·摩尔是一名咨询专家,他最近的咨询业务包括Salesforce、微软、Autodesk、F5Networks、Gainsight、谷歌和Splunk。 他一生的工作都集中在颠覆性创新的市场动态上。他的第一本书《跨越鸿沟》是关于创业公司在从早期采用者过渡到主流客户时所面临的挑战,该书已售出超过一百万册。摩尔最近的作品《Zone to Win》探讨了大型企业在拥抱颠覆性创新时所面临的挑战。 摩尔每年发表50至80场演讲,最近他重点关注企业IT投资从记录系统向交互系统的转变。
我将发布更多关于我们演讲者的信息。今年的全球峰会,演讲阵容很强大。
另外,你现在可以在我们的网站上建立你的会议和时间表。如果你还没有注册,可以点击马上注册.
第138章 SQL函数 TIMESTAMPADD
一个标量日期/时间函数,它返回一个新的时间戳,该时间戳是通过将指定日期部分的多个间隔添加到时间戳来计算的。
大纲
{fn TIMESTAMPADD(interval-type,integer-exp,timestamp-exp)}
参数
interval-type-integer-exp表示的时间/日期间隔类型,指定为关键字。integer-exp- 要添加到 的整数值表达式。timestamp-exp- 时间戳值表达式,将增加 的值。
描述
函数通过将指定的日期部分增加指定的单位数来修改日期/时间表达式。例如,如果 是 并且 是 ,则 将 增加五个月。还可以通过为 指定负整数来减少日期部分。
返回与输入 数据类型相同的时间戳。此时间戳可以是 %Library.TimeStamp 数据类型格式 () 或 数据类型格式(编码的 位有符号整数)。
请注意, 只能用作 标量函数(使用大括号语法)。
可以使用 通用函数对时间戳执行类似的时间/日期修改操作。
Interval Types
间隔类型参数可以是以下时间戳间隔之一:
SQL_TSI_FRAC_SECONDSQL_TSI_MINUTE
这些时间戳间隔可以使用单引号或双引号来指定,带或不带引号。它们不区分大小写。
InterSystems IRIS 2021.1 的发布引入了自适应分析(Adaptive Analytics)的介绍。 为了开始使用和熟悉 InterSystems IRIS BI cube示例,我们创建了一个用于自适应分析的 HoleFoods 应用程序示例模版。 此示例应用程序可在 Open Exchange 上获得, 还有一个学习服务课程learning services course 可用于了解有关自适应分析的更多信息。
.png)
第137章 SQL函数 TAN
标量数值函数,返回角度的正切(以弧度为单位)。
大纲
{fn TAN(numeric-expression)}
参数
numeric-expression- 一个数值表达式。这是一个以弧度表示的角度。
TAN 返回 NUMERIC 或 数据类型。如果 是数据类型 DOUBLE,则 TAN 返回 ;否则,它返回 。
描述
接受任何数值并返回其切线。如果传递 值,TAN 返回 。 将非数字字符串视为数值 。
返回一个精度为 、比例为 18 的值。
只能用作 标量函数(使用大括号语法)。
可以使用 函数将弧度转换为度数。可以使用 函数将度数转换为弧度。
示例
以下示例显示了 TAN 的效果。
SELECT {fn TAN(0.52)} AS Tangent
0.572561830251668415
第136章 SQL函数 SUBSTRING
字符串函数,它从任何数据类型的数据(包括流数据)中返回一个子字符串。
大纲
SUBSTRING(string-expression,start[,length])
SUBSTRING(string-expression FROM start [FOR length])
{fn SUBSTRING(string-expression,start[,length])}
参数
string-expression- 要从中派生子字符串的字符串表达式。表达式,可以是列名、字符串文字或另一个标量函数的结果。字段可以是任何数据类型:字符串(例如CHAR或VARCHAR)、数字或数据类型为 或 的数据流字段。- - 一个整数,它指定 中开始子字符串的位置。
string-expression中的第一个字符位于位置 。如果起始位置高于字符串的长度,则 返回一个空字符串 。如果起始位置小于 (零或负数),则子字符串从位置 开始,但子字符串的长度会减少起始位置。 - - 可选 — 一个整数,指定要返回的子字符串的长度。如果未指定长度,则默认返回字符串的其余部分。
描述
接受任何数据类型的数据并将该数据的子字符串作为数据类型 返回。当然,子字符串可以是作为字符串返回的完整数据值。
的值控制子字符串的起点:
- 如果 为
1
从数据上看,2022年Epic的市场份额遥遥领先,而Cerner的市场却在不断被蚕食。
非常骄傲的是Epic电子病历是基于InterSystems数据平台构建,早在2020年Epic就将其数据库从Cache升级到InterSystems IRIS。
关于KLAS
KLAS是一家全球性数据驱动型公司,旨在通过提升医疗机构和保险公司的话语权来改善医疗服务水平和质量。KLAS与数以千计的医疗领域专业人员携手合作,收集对软件、服务和医疗设备的相关见解与反馈,并发布相应的行业报告、发展趋势和统计概况。KLAS如实提供准确且公正的数据,这种调研直接反映了医疗领域专家的声音,并帮助医疗行业的供应商提高业绩。更多详情,请登录:https://klasresearch.com/
报告原文也可以从网上获取。
第135章 SQL函数 SUBSTR
返回从指定字符串表达式派生的子字符串的字符串函数。
大纲
SUBSTR(string-expression,start[,length])
参数
string-expression- 要从中派生子字符串的字符串表达式。表达式可以是列名、字符串文字或另一个标量函数的结果,其中基础数据类型可以表示为任何字符类型(例如CHAR或VARCHAR)。- - 一个整数,它指定子字符串在字符串表达式中的开始位置。正的起始位置指定从字符串开头开始的字符数。 中的第一个字符位于位置
1。负起始位置指定从字符串末尾算起的字符数。如果 为 (零),则将其视为 。 - - 可选 — 一个正整数,指定要返回的子字符串的长度。此值指定子字符串在起始位置右侧结束长度字符。如果省略,则子字符串从字符串表达式的开头到结尾。如果长度为 或负数, 返回
NULL。
描述
因为 可以是负数,所以可以从原始字符串的开头或结尾获取子字符串。
作为参数传递给 的浮点数通过截断小数部分转换为整数。
- 如果 为 、
–0或 ,则返回的子字符串从字符串的第一个字符开始。 - 如果 是负数,则返回的子字符串从字符串末尾开始该数量的字符, 表示字符串的最后一个字符。如果负数太大以至于从字符串末尾向后计数的值将位于字符串开头之前,则返回的子字符串从字符串的第一个字符开始。
- 如果
start
我们的一位客户五一期间向使用IRIS搭建的数据流推送一家三甲医院数年的历史数据,导致实施的同事们经历了一系列噩梦,包括但不限与:
1. 由于未通知实施团队有这样规模的数据推送,数据推送过程与全库备份任务重叠。尽管实例和数据流正常运行,但备份任务与数据流争抢IO,导致备份任务不能在预期时间内完成,实施童鞋五一加班处理问题。
2. 为了节省磁盘空间,服务器上部署了定期删除IRIS备份文件的任务,原本能够保持一周的全备+增量备份,但在本次数据暴增的情况下,新的备份尚未完成而旧的全备已被删除,导致问题发生时没有可用于恢复的备份。
3. 由于这次数据推送前未进行数据质量校验,推送的数据全部不合规,但已经历了较长的数据流进行处理全部入库;同时由于备份文件已被删除,无法通过恢复数据库的方法回滚,导致实施童鞋不得不逐条从生产环境三个库的数百张表中挑出问题数据逐一删除,从五一放假结束至今还未完成善后工作。大家可以设想一下,如果备份还在,那么恢复备份就可以了。
因此,我们希望再次提醒各位在前线奋斗的亲们:
1. 善待你的备份。尽管对于大型医院或医疗集团来说,两周的全备+增量备份策略下,备份文件会占据数个TB的存储空间。但在需要回滚时,这几个T的空间能救命。
2. 保持可用的测试环境。尤其是对于可能出现随机数据需求的客户,随机产生数据需求意味着随机出现测试需求。
3. 验证新数据的合规性,永远不要假设新数据一定合规。
第134章 SQL函数 STUFF
字符串函数,用于替换字符串中的子字符串。
大纲
STUFF(string,start,length,substring)
参数
string- 作为子字符串替换目标的字符串表达式。start- 替换的起点,指定为正整数。从字符串开头开始的字符数,从1开始计数。允许的值为0到字符串的长度。要追加字符,请指定 的开头和 的长度。空字符串或非数字值被视为 。- - 要替换的字符数,指定为正整数。要插入字符,请将长度指定为 。要在开始后替换所有字符,请指定大于现有字符数的长度。空字符串或非数字值被视为
0。 - - 一个字符串表达式,用于替换由其起始点和长度标识的子字符串。可以比它替换的子字符串更长或更短。可以是空字符串。
描述
用另一个子字符串替换一个子字符串。它标识要替换为位置和长度的子字符串,并将其替换为子字符串。
此函数提供与 实现的兼容性。
替换子字符串可能比原始值长或短。要删除原始值,子字符串可以是空字符串 ()。
起始值必须在字符串的当前长度范围内。您可以通过指定起始值 0 将子字符串附加到字符串的开头。空字符串或非数字值被视为 。
为 start、 或 参数指定 将返回 。
不能将 字段用于字符串或子字符串参数。尝试这样做会生成 SQLCODE -37 错误。
REPLACE 和 STUFF
和 都执行子字符串替换。
第133章 SQL函数 STRING
将表达式转换并连接成字符串的函数。
大纲
STRING(string1[,string2][,...][,stringN])
参数
string- 表达式,可以是字段名称、字符串文字、数字或另一个函数的结果,其中基础数据类型可以表示为任何字符类型(例如CHAR或VARCHAR)。如果指定了字段名称,则使用逻辑值。
描述
STRING 将一个或多个字符串转换为 STRING 格式,然后将这些字符串连接成一个字符串。不执行大小写转换。
在字符串转换之前将数字转换为其规范形式。因此,它执行算术运算,从数字中删除前导和尾随零以及前导加号。
如果字符串参数之一为 ,则 STRING 返回 。如果字符串参数之一是空字符串 (),则 将连接其他参数。 保留空格。
可以使用 函数转换数据值以进行区分大小写的字符串比较,或使用 函数转换数据值以进行不区分大小写的字符串比较。
示例
在以下嵌入式 SQL 示例中,STRING 将三个子字符串连接成一个字符串。该示例显示了空格、空字符串和 的处理:
/// d ##class(PHA.TEST.SQLFunction).String()
ClassMethod String()
{
&sql(
SELECT STRING('a','b','c'),
STRING('a',' ','c'),
STRING('a','','c'),
STRING('a',NULL,'c')
INTO :w,:x,:y,:z
)
if SQLCODE '= 0 {
w !,"Error code ",SQLCODE
} else {
w !,"Resulting string is:",w
w !,"Resulting string is:",x
w !,"Resulting string is:",y
w !,"Resulting string is:",z
}
}
你是否尝试过InterSystems IRIS IntegratedML学习平台?在这个平台中,你可以在再入院数据集上训练和测试一个模型,并能够预测一个病人何时会再入院,或计算其再入院的概率。
你不需要在你的系统上进行任何安装就可以尝试,你所要做的就是启动一个虚拟实验室环境(Zeppelin),然后玩一玩!
在这篇文章中,我们将利用这个实验室向你简要介绍IntegratedML,向你介绍要处理的问题,如何使用IntegratedML来创建一个再入院预测模型,以及如何分析其性能指标的一些见解。
什么是IntegratedML?
来源: https://github.com/intersystems-community/integratedml-demo-template
在开始本教程之前,让我们简单谈谈IRIS IntegratedML。这个工具使你能够直接在SQL语句中执行机器学习(ML)任务,抽象出复杂过程的实现,例如,选择哪些列和ML算法是对目标列进行分类或回归的最佳选择。
IntegratedML的另一个伟大功能是易于部署。一旦你的模型被训练并表现良好,你只需要运行SQL语句,以便让你的模型投入生产。
IntegratedML让你选择使用哪个 ML提供者。默认的提供者是 AutoML, 这是InterSystems公司使用Python实现的ML库 scikit-learn
InterSystems IRIS IntegratedML功能用于使用AutoML技术获得机器学习的预测结果和概率。AutoML是一种机器学习技术,用于选择更好的机器学习算法/模型基于已有数据(用于训练AutoML模型的数据)来预测状态、数字和结果。你不需要一个数据科学家,因为AutoML会测试最常见的机器学习算法,并根据分析的数据特征选择更好的算法给你。在这篇文章中可以看到更多管乐IntegratedML的信息。
InterSystems IRIS有一个内置的AutoML引擎,但也允许你使用H2O和DataRobot。在这篇文章中,我将向你展示使用InterSystems AutoML引擎的每个步骤。
第1步 - 下载样例应用程序做练习
1. 转到 https://openexchange.intersystems.com/package/Health-Dataset
2. Clone/git 将 Repo拉到任何本地目录中
$ git clone https://github.com/yurimarx/automl-heart.git
3. 在同一个目录中打开一个Docker终端并运行
$ docker-compose build
4.
第132章 SQL函数 STR
将数字转换为字符串的函数。
大纲
STR(number[,length[,decimals]])
参数
number- 解析为数字的表达式。它可以是字段名称、数字或其他函数的结果。如果指定了字段名称,则使用逻辑值。length- 可选 — 一个整数,指定所需输出字符串的总长度,包括所有字符(数字、小数点、符号、空格)。默认值为10。decimals- 可选 — 一个整数,指定要包含的小数点右侧的位数。默认值为 0。
描述
将数字转换为 格式,根据长度和小数的值截断数字。长度参数必须足够大以包含数字的整个整数部分,并且,如果指定小数,则该小数位数加 (用于小数点)。如果长度不够大,则 将返回一个星号 () 字符串,该字符串等于长度。
在字符串转换之前将数字转换为其规范形式。因此,它执行算术运算,从数字中删除前导和尾随零以及前导加号。
如果 参数为 NULL,则 返回 。如果 参数是空字符串 (),则 返回空字符串。 保留空格。
示例
在以下嵌入式 示例中, 将数字转换为字符串:
/// d ##class(PHA.TEST.SQLFunction).Str()
ClassMethod Str()
{
&sql(
SELECT STR(123),
STR(123,4),
STR(+00123.45,3),
STR(+00123.45,3,1),
STR(+00123.45,5,1)
INTO :v,:w,:x,:y,:z
)
if SQLCODE '= 0 {
w !,"Error code ",SQLCODE
} else {
w !,"Resulting STR:",v," string"
w !,"Resulting STR:",w," string"
w !,"Resulting STR:",x," string"
w !,"Resulting STR:",y," string"
w !,"Resulting STR:",z," string"
}
}
第131章 SQL函数 SQUARE
返回数字平方的标量数值函数。
大纲
SQUARE(numeric-expression)
参数
numeric-expression- 解析为数值的表达式。
SQUARE 返回 NUMERIC 或 数据类型。如果 是数据类型 ,则 返回 ;否则,它返回 。
描述
返回数值表达式的平方。如果传递 值,SQUARE 返回 。
返回的精度和小数位数与 乘法运算符返回的相同。
示例
以下嵌入式 SQL 示例返回整数 到 10 的平方:
/// d ##class(PHA.TEST.SQLFunction).Square()
ClassMethod Square()
{
s a = 0
while a < 11 {
&sql(
SELECT SQUARE(:a) INTO :b
)
if SQLCODE '= 0 {
w !,"Error code ",SQLCODE
} else {
w !,"The square of ",a," = ",b
s a = a + 1
}
}
}
DHC-APP>d ##class(PHA.TEST.SQLFunction).Square()
The square of 0 = 0
The square of 1 = 1
The square of 2 = 4
The square of 3 = 9
The square of 4 = 16
The square of 5 = 25
The square of 6 = 36
The square of 7 = 49
The square of 8 = 64
The square of 9 = 81
The square of 10 = 100
nterSystems很高兴地宣布发布系统警报和监控(SAM)1.1版。
什么是SAM ?
SAM将IRIS基于标准的监控API和日志监控与熟悉的行业标准工具如Grafana和Prometheus结合起来,为IRIS集群创建一个基本的监控和告警解决方案。
关于SAM的更多信息,请参阅《系统告警和监控指南》。
SAM 1.1有什么新的内容?
你会注意到Grafana仪表盘图形的性能改进,特别是在处理大型数据集时。 如果你从SAM 1.0升级,你要确保你有足够的磁盘空间,因为SAM 1.1增加了额外的数据索引。
有关升级到SAM 1.1的更多信息,请参见发行说明。

SAM 主页
SAM 实例详细页面
Hi 社区,
想象一下,使您的应用程序能够阅读文本?现在有了IRIS的新功能--嵌入式Python,这就成为可能。有了这个新功能,IRIS可以原生地运行任何开源或商业的Python库。gTTS(https://pypi.org/project/gTTS/)是一个免费的库,使用谷歌翻译服务将文本转换成音频。
怎么做
只要通过参数传递文本,gTTS就会返回一个将文本转换为音频的MP3文件。也就是说,你的应用程序可以播放任何文本的音频! 请看如何做到这一点。
1. 进入https://openexchange.intersystems.com/package/IRIS-Text2Audio,点击下载按钮。
2. 克隆/git pull repo到任何本地目录中
$ git clone https://github.com/yurimarx/iris-tts.git
3. 在这个目录中打开一个Docker终端,运行:
$ docker-compose build
4. 运行IRIS container:
$ docker-compose up -d
5.
所有源代码均在: https://github.com/antonum/ha-iris-k8s

在上一篇文章中,我们讨论了如何在k8s集群上建立具有高可用性的IRIS,基于分布式存储,而不是传统的镜像。作为一个例子,那篇文章使用了Azure AKS集群。在这一篇中,我们将继续探讨k8s上的高可用配置。这一次,基于Amazon EKS(AWS管理的Kubernetes服务),并将包括一个基于Kubernetes 快照进行数据库备份和恢复的选项。
安装
开始干活. 首先需要一个AWS账户,安装 AWS CLI, kubectl 和 eksctl 工具. 要创建新的集群,请运行以下命令:
eksctl create cluster \ --name my-cluster \ --node-type m5.2xlarge \ --nodes 3 \ --node-volume-size 500 \ --region us-east-1
这个命令需要大约15分钟,部署EKS集群并使其成为你的kubectl工具的默认集群。你可以通过运行以下代码来验证你的部署:
kubectl get nodes NAME STATUS ROLES AGE VERSION ip-192-168-19-7.ca-central-1.compute.internal Ready <none> 18d v1.18.9-eks-d1db3c ip-192-168-37-96.ca-central-1.compute.internal Ready <none> 18d v1.18.9-eks-d1db3c ip-192-168-76-18.ca-central-1.compute.internal Ready <none> 18d v1.18.9-eks-d1db3c
第130章 SQL函数 SQRT
返回给定数值表达式的平方根的数值函数。
大纲
SQRT(numeric-expression)
{fn SQRT(numeric-expression)}
参数
numeric-expression- 解析为计算平方根的正数的表达式。
SQRT 返回 NUMERIC 或 数据类型。如果 是数据类型 ,则 返回 ;否则,它返回 NUMERIC。
描述
返回 的平方根。 numeric-expression 必须是正数。负数值表达式( 除外)会生成 错误。如果传递 值, 返回 。
返回一个精度为 、小数位数为 18 的值。
可以指定为常规标量函数或 标量函数(使用大括号语法)。
示例
以下示例显示了两种 语法形式。两者都返回 的平方根:
SELECT SQRT(49) AS SRoot,{fn SQRT(49)} AS ODBCSRoot
7 7
以下嵌入式 示例返回整数 到 的平方根:
/// d ##class(PHA.TEST.SQLFunction).Sort()
ClassMethod Sort()
{
s a = 0
while a < 11 {
&sql(
SELECT SQRT(:a) INTO :b
)
if SQLCODE '= 0 {
w !,"Error code ",SQLCODE
} else {
w !,"The square root of ",a," = ",b
s a = a + 1
}
}
}


