华为云用户手册

  • 开启审计日志转储 登录GaussDB(DWS) 管理控制台。 在左侧导航栏中,单击“集群管理”。 在集群列表中,单击您想要开启审计日志转储的集群的名称,然后在左侧导航栏单击“安全设置”。 在“审计配置”区域中,开启审计日志转储。 表示开启状态。表示关闭状态。 每个区域的每个项目首次开启审计日志转储功能时,系统将提示您需创建名称为“DWSAccessOBS”的委托,委托创建成功后,GaussDB(DWS) 可以将审计日志转储至OBS中。 默认情况下,只有华为云帐号或拥有Security Administrator权限的用户才具备查询委托和创建委托的权限。帐号中的IAM用户,默认没有查询委托和创建委托的权限,此时需联系有权限的用户在当前页面完成对GaussDB(DWS) 的委托授权。 图1 开启审计日志转储 转储目录分区:支持审计日志转储时可采用OBS外表读取,转储至OBS时审计日志会采用csv格式且使用gz格式压缩。 OBS桶:存储审计数据的OBS桶名称。如果没有可选择的OBS桶,可以单击“查看OBS桶”进入OBS管理控制台创建新的OBS桶,具体操作请参见《对象存储服务控制台指南》中的创建桶章节。 OBS路径:在OBS中存储审计文件的自定义目录。多级目录可用“/”进行分隔,不能以“/”开头。路径取值范围:1~50个字符。如果填写的OBS路径不存在时,系统会先创建该OBS路径再进行转储。 转储周期(分):根据用户配置的时间,周期性的将数据转储到OBS中。取值范围:5~43200。单位为分钟。 单击“应用”。 “配置状态”显示为“应用中”,表示系统正在保存配置。 等待一段时间后再次刷新“配置状态”,当显示为“已同步”,表示已保存配置并生效。
  • 修改审计日志转储 开启审计日志转储后,您可以对转储配置进行修改,如修改日志存放的OBS桶和路径,转储周期等。 修改审计日志转储具体操作如下: 登录GaussDB(DWS) 管理控制台。 在左侧导航栏中,单击“集群管理”。 在集群列表中,单击您想要修改审计日志转储的集群的名称,然后在左侧导航栏单击“安全设置”。 在“审计配置”区域中,修改审计日志转储配置。 单击“应用”。 “配置状态”显示为“应用中”,表示系统正在保存配置。 等待一段时间后再次刷新“配置状态”,当显示为“已同步”,表示已保存配置并生效。
  • 包年/包月计费模式 表4 包年/包月计费模式显示说明 状态 说明 XX后到期 包周期集群剩余时长。可进行续费、转按需、退订操作。 已过期, XX后冻结 包周期集群购买时长到期,未续费时会进入宽限期。宽限期包周期集群正常使用,可进行续费操作,不可进行转按需、退订操作。 已冻结, XX后删除 包周期集群宽限期结束,进入保留期。可进行续费操作,不可进行转按需、退订操作。 XX后转按需 包周期集群购买时长到期后转成按需集群。可进行续费、退订操作,不可进行转按需操作。 已冻结(违规) 公安冻结资源。可进行续费操作,不可进行转按需、退订操作。冻结期间会继续收取费用。 已冻结(违规), XX后删除 违规冻结资源。可进行续费操作,不可进行转按需、退订操作。冻结期间会继续收取费用。
  • 查看集群详情 登录GaussDB(DWS) 管理控制台,在左侧导航树,单击“集群管理”,在集群列表中找到所需要的集群,然后单击集群名称,进入“集群详情”页面。 在“集群详情”页面,可以查看如下相关信息: 基本信息:相关参数如表1所示。 连接信息:相关参数如表2所示。 网络:相关参数如表3所示。 计费信息:相关参数如表4所示。 存储/备份空间:相关参数如表5所示。 运维用户:相关参数如表6所示。 数据加密信息:相关参数如表7所示。 创建集群时选择开启数据加密功能可查看此模块。 表1 基本信息 参数 参数说明 集群名称 集群的名称,创建集群时设置。 集群状态 集群的状态信息,详情请参见集群状态。 参数配置状态 显示集群关联的参数配置状态。 任务信息 集群任务的状态信息,详情请参见集群任务信息。 规格详情 显示集群的节点规格详情。 节点数量 集群的节点数量。 逻辑集群开关 用户可根据需求打开“逻辑集群开关”,页面将出现“逻辑集群管理”页签。 集群ID 集群的ID。 集群版本 集群的版本信息。 创建时间 集群创建的时间。 节点规格 显示集群规格。 可维护时间段 集群的可维护时间段。 企业项目 集群所属的企业项目。单击企业项目名称,可进入企业项目服务的Console页面对企业项目进行查看和编辑。 表2 连接信息 参数名 参数解释 内网域名 通过内部网络访问集群数据库的域名地址,对应所有的内网IP地址,即所有CN的地址。内网访问域名在创建集群时自动生成。默认命名规则为:集群名称.dws.myhuaweicloud.com。 说明: 如果集群名称不符合域名规范,默认的访问域名前缀会相应做一些调整。 不支持负载均衡能力。 单击“修改”可以修改内网访问域名。访问域名由字母、数字、中划线组成,以大小写字母开头,长度为4~63个字符。 更多信息请参见管理集群访问域名。 内网IP 通过内部网络访问集群数据库的IP地址。 说明: 内网访问IP地址在创建集群时自动生成,生成后的IP地址是固定的。 内网访问IP的数量对应的是CN节点的个数,可以通过登录任一节点连接到集群。 通过内网访问某个固定的IP,资源池会集中在一个CN上。 公网域名 通过外部网络访问集群数据库的域名地址。更多信息请参见管理集群访问域名。 说明: 不支持负载均衡能力。 公网IP 通过外部网络访问集群数据库的IP地址。 说明: 如果创建集群时没有绑定弹性IP,“公网IP”显示为空,可以单击“编辑”为集群绑定弹性IP。 如果创建集群时绑定了弹性IP,可以单击“编辑”为集群解绑弹性IP。 初始管理员用户 创建集群时指定的数据库管理员用户。当用户第一次连接集群时,需要使用初始数据库管理员用户及其密码连接到默认数据库。 端口 通过公网或者内网访问集群数据库的端口号,端口号在创建集群时指定。 默认数据库 创建集群时默认自动创建的数据库。当用户第一次连接集群时,需要连接到该默认数据库。 弹性负载均衡地址 为实现集群高可用,解决CN单点问题,集群创建后需手动绑定弹性负载均衡(ELB),连接集群时建议连接ELB地址。 表3 网络 参数 参数说明 区域 集群的工作区域。 可用区 显示创建集群时所选择的可用区信息。 虚拟私有云 VPC信息,创建集群时所选。 VPC即虚拟私有云,是通过逻辑方式进行网络隔离,提供安全、隔离的网络环境。 GaussDB(DWS) 集群创建成功后,其虚拟私有云将不能更改为其他的虚拟私有云,但是您可以编辑和修改当前的虚拟私有云。单击此处的虚拟私有云名称,进入虚拟私有云详情页面,您可以对虚拟私有进行设置。有关虚拟私有云的详细操作,请参见《虚拟私有云用户指南》中的修改虚拟私有云。 子网 子网信息,创建集群时所选。 通过子网提供与其他网络隔离的、可以独享的网络资源,以提高网络安全。 GaussDB(DWS) 集群创建成功后,其子网将不能更改为其他子网,但是您可以编辑和修改当前的子网。单击此处的子网名称,进入子网详情页面,您可以对子网进行设置。有关子网的详细操作,请参见《虚拟私有云用户指南》中的修改子网网络信息。 安全组 显示创建集群时所选择的安全组信息。 GaussDB(DWS) 集群创建成功后,其安全组将不能更改为其他安全组,但是您可以编辑和修改当前的安全组,在当前的安全组中添加、删除或修改安全组规则。 单击此处的安全组名称,进入安全组详情页面,您可以对安全组进行设置。有关安全组的详细操作,请参见《虚拟私有云用户指南》中的安全组。 表4 计费信息 参数 参数说明 计费模式 计费模式有: 按需计费 包年/包月 创建时间 按需集群或包年/包月计费集群创建时间。 订单(包年/包月参数) 包年/包月计费模式订单号。 到期时间(包年/包月参数) 包年/包月计费模式到期时间。 表5 存储/备份空间 参数 参数说明 存储空间 显示存储类型为超高I/O,以及集群存储空间的使用状况。 说明: 已使用存储容量不包含外表OBS上的数据,只包含单独的GaussDB(DWS)本身的数据,其中包括文件,日志,快照,索引等数据。 显示可存储空间容量为真实磁盘容量的二分之一。 备份空间 显示集群备份已使用的容量空间、备份的赠送空间以及备份已使用的超出赠送空间外的收费空间。 OBS热数据已用容量(DWS 3.0参数) DWS 3.0已使用的OBS热数据容量。 冷数据已用容量 冷数据已使用的OBS容量。 说明: 该参数显示OBS已使用容量每小时同步一次。 表6 运维账户 参数 参数说明 运维账户开关 集群运维账户开关。 开启运维账户后,将在集群中创建运维账户,账户名为om_user_集群ID前8位。并赋予gs_role_analyze_any,gs_role_vacuum_any,gs_role_read_all_stats,gs_role_signal_backend角色。详情请参考:预置角色。 账户状态 显示当前集群运维账户状态: 正常/过期。 失效时间 显示当前集群运维账户失效时间。 失效时间延长按钮 正常状态: 延长账户有效期至失效时间8小时后。 过期状态: 设置账户有效期至当前时间8小时后。 表7 数据加密信息 参数 参数说明 密钥名称 当“加密数据库”开启时,显示集群的数据库加密密钥。 上次密钥轮转时间 当“加密数据库”开启时,显示上一次加密密钥轮转的时间。 父主题: 集群管理
  • 请求消息体(可选) 该部分可选。请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中Content-Type对应,传递除请求消息头之外的内容。若请求消息体中的参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于创建客户接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,请求参数的取值需要根据实际情况填写。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 POST https://bss.myhuaweicloud.com/v2/partners/sub-customers HTTP/1.1 Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ { "domain_name": "test", "mobile_phone": "189xxxxxxxx", "verification_code": "253xxx", "xaccount_id": "35reyxxxx", "xaccount_type": "xxx_IDP", "password": "xxxxxxx", "is_close_market_ms": "true", "cooperation_type": "1", "indirect_partner_id": "a0d736359ada40aab6502d1a828c1809" } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。
  • 请求消息头 可选的附加请求头字段,如指定的URI和HTTP方法所要求的字段。详细的公共请求消息头字段请参见表3。 表3 公共请求消息头 名称 描述 是否必选 示例 Host 请求的服务器信息,从服务API的URL中获取。值为hostname[:port]。端口缺省时使用默认的端口,https的默认端口为443。 否 使用AK/SK认证时该字段必选。 bss.myhuaweicloud.com or bss.myhuaweicloud.com:443 Content-Type 发送的实体的MIME类型。推荐用户默认使用application/json,如果API是对象、镜像上传等接口,媒体类型可按照流类型的不同进行确定。 是 application/json Content-Length 请求body长度,单位为Byte。 否 3495 X-Auth-Token 用户Token。 获取Token,请参考Token认证。 否 使用Token认证时该字段必选。 注:以下仅为Token示例片段MIIPAgYJKoZIhvcNAQcCoIIO8zCCDu8CAQExDTALBglghkgBZQMEAgEwgg1QBgkqhkiG9w0BBwGggg1BBIINPXsidG9rZ API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 AK/SK认证的详细说明请参见认证鉴权的“AK/SK认证”。 对于创建客户接口,添加消息头后的请求如下所示。 POST https://bss.myhuaweicloud.com/v2/partners/sub-customers Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在创建客户的URI部分,您可以看到其请求方法为“POST”,则其请求URI为: 1 POST https://bss.myhuaweicloud.com/v2/partners/sub-customers
  • 请求URI 请求URI由如下部分组成: {URI-scheme}://{Endpoint}/{resource-path}?{query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以我们在此单独拿出来强调。 表1 URI中的参数说明 参数 描述 URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器域名或IP。 客户运营能力API的Endpoint为“bss.myhuaweicloud.com”。 说明: 该Endpoint为全局Endpoint,中国站所有区域均可使用。 支持TLS 1.2。 resource-path 资源路径,也即API访问路径。从具体API的URI模块获取,例如“创建客户”API的resource-path为“/v2/partners/sub-customers”。 query-string 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过10条数据。 例如您需要获取创建客户的请求URI,则需找到创建客户的resource-path(/v2/partners/sub-customers),拼接起来如下所示。 https://bss.myhuaweicloud.com/v2/partners/sub-customers 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 请求消息头 可选的附加请求头字段,如指定的URI和HTTP方法所要求的字段。详细的公共请求消息头字段请参见表3。 表3 公共请求消息头 名称 描述 是否必选 示例 Host 请求的服务器信息,从服务API的URL中获取。值为hostname[:port]。端口缺省时使用默认的端口,https的默认端口为443。 否 使用AK/SK认证时该字段必选。 bss.myhuaweicloud.com or bss.myhuaweicloud.com:443 Content-Type 发送的实体的MIME类型。推荐用户默认使用application/json,如果API是对象、镜像上传等接口,媒体类型可按照流类型的不同进行确定。 是 application/json Content-Length 请求body长度,单位为Byte。 否 3495 X-Auth-Token 用户Token。 获取Token,请参考Token认证。 否 使用Token认证时该字段必选。 注:以下仅为Token示例片段MIIPAgYJKoZIhvcNAQcCoIIO8zCCDu8CAQExDTALBglghkgBZQMEAgEwgg1QBgkqhkiG9w0BBwGggg1BBIINPXsidG9rZ API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 AK/SK认证的详细说明请参见认证鉴权的“AK/SK认证”。 对于创建客户接口,添加消息头后的请求如下所示。 POST https://bss.myhuaweicloud.com/v2/partners/sub-customers Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ
  • 请求消息体(可选) 该部分可选。请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中Content-Type对应,传递除请求消息头之外的内容。若请求消息体中的参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于创建客户接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,请求参数的取值需要根据实际情况填写。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 POST https://bss.myhuaweicloud.com/v2/partners/sub-customers HTTP/1.1 Content-Type: application/json X-Auth-Token:MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ { "domain_name": "test", "mobile_phone": "189xxxxxxxx", "verification_code": "253xxx", "xaccount_id": "35reyxxxx", "xaccount_type": "xxx_IDP", "password": "xxxxxxx", "is_close_market_ms": "true", "cooperation_type": "1", "indirect_partner_id": "a0d736359ada40aab6502d1a828c1809" } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。
  • 请求URI 请求URI由如下部分组成: {URI-scheme}://{Endpoint}/{resource-path}?{query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以我们在此单独拿出来强调。 表1 URI中的参数说明 参数 描述 URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器域名或IP。 合作伙伴运营能力API的Endpoint为“bss.myhuaweicloud.com”。 说明: 该Endpoint为全局Endpoint,中国站所有区域均可使用。 支持TLS 1.2。 resource-path 资源路径,也即API访问路径。从具体API的URI模块获取,例如“创建客户”API的resource-path为“/v2/partners/sub-customers”。 query-string 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过10条数据。 例如您需要获取创建客户的请求URI,则需找到创建客户的resource-path(/v2/partners/sub-customers),拼接起来如下所示。 https://bss.myhuaweicloud.com/v2/partners/sub-customers 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在创建客户的URI部分,您可以看到其请求方法为“POST”,则其请求URI为: 1 POST https://bss.myhuaweicloud.com/v2/partners/sub-customers
  • 查看上下文 您可以通过本操作查看指定日志生成时间点前后的日志,用于在运维过程中快速定位问题。 在日志详情页面的原始日志页签,单击可以查看上下文。 在查看上下文结果中,可以查看该日志的前后若干条日志详细信息。 图2 查看日志 在弹出的查看上下文页面中,查看日志上下文。 图3 查看日志上下文 表1 查看上下文日志功能介绍 功能 说明 查询行数 查询日志的行数,支持选择100、200、500、1000、2000。 高亮显示 输入需要高亮的字符串,回车确认,在日志内容中高亮显示。 过滤日志 输入需要过滤的字符串,回车确认,在日志内容中高亮显示。当高亮显示和过滤日志同时设置时,均可高亮显示。 显示字段 查看上下文,默认字段为content,单击“显示字段”选择查看其他字段的上下文。 更早 从当前位置往前查看设置查询行数的二分之一。例如:当查询行数设置为100时,单击“更早”则从当前位置朝前显示50行,此时行号为-50;再次单击“更早”,依次叠加分别为-100、-150、-200...... 当前位置 当前日志位置。当设置了更早或更新时,单击“当前位置”可回到查看上下文开始的位置,即行数为0时。 更新 从当前位置往后查看设置查询行数的二分之一。例如:当查询行数设置为100时,单击“更新”则从当前位置朝后显示50行,此时行号为50;再次单击“更新”,依次叠加分别为100、150、200...... 简洁模式 打开简洁模式,只显示行号和content内容。关闭简洁模式,显示日志详情。
  • 操作步骤 在云日志服务控制台,单击“日志管理”。 在日志组列表中,单击日志组名称前对应的按钮。 在日志流列表中,单击日志流名称,进入日志详情页面。 在原始日志页签,单击,输入“快速查询名称”和“快速查询语句”。默认开启快速查询和快速查询(保存本地)。 图1 创建快速查询 快速查询名称,用于区分多个快速查询语句。名称自定义,需要满足如下要求: 只支持输入英文、数字、中文、中划线、下划线及小数点。 不能以小数点、下划线开头或以小数点结尾。 长度为1-64个字符。 快速查询语句,搜索日志时需要重复使用的关键字,例如“error*”。 单击“确定”,完成快速查询条件的创建。在左侧导航栏的快速查询页签,即可查看到保存成功的语句。 单击快速查询语句的名称,查看日志详情。
  • normalize函数 格式化字符串str。 使用NFC格式格式化字符串str。 语法:normalize(str) 使用给定格式格式化字符串str,支持的格式有NFC, NFD, NFKC, NFKD. 语法:normalize(str, form) 表46 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 form 格式化类型。 String 否 返回值类型:String类型 示例:SELECT NORMALIZE('schön'), NORMALIZE('Henry \u2163', 'nfd') 表47 查询分析结果 类型 场景1 场景2 查询语句 NORMALIZE('schön') NORMALIZE('Henry \u2163', 'nfd') 返回结果 schön Henry Ⅳ
  • levenshtein_distance函数 计算两个字符串str1和str2之间的最小编辑距离。 语法:levenshtein_distance(str1, str2) 表44 参数说明 参数名称 描述 类型 是否必选 str1 原始字符串1。 String 是 str2 原始字符串2。 String 是 返回值类型:Integer类型 示例:SELECT LEVENSHTEIN_DISTANCE('horse', 'ros') 表45 查询分析结果 类型 场景 查询语句 LEVENSHTEIN_DISTANCE('horse', 'ros') 返回结果 3
  • character_length函数 与length函数功能一致。 语法:character_length(str) 表40 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 返回值类型:Integer类型 示例:SELECT CHARACTER_LENGTH('HELLO WORLD') 表41 查询分析结果 类型 场景 查询语句 CHARACTER_LENGTH('HELLO WORLD') 返回结果 11
  • char_length函数 与length函数功能一致,如果字符串表达式是字符数据类型,则返回输入的字符长度;否则,返回字符串表达式的字节长度(不小于位数除以8的最小整数)。 语法:char_length(str) 表38 参数说明 参数名称 描述 类型 是否必选 str 原始字符串 String 是 返回值类型:Integer类型 示例:SELECT CHAR_LENGTH('HELLO WORLD') 表39 查询分析结果 类型 场景 查询语句 CHAR_LENGTH('HELLO WORLD') 返回结果 11
  • length函数 如果字符串表达式是字符数据类型,则返回输入的字符长度;否则,返回字符串表达式的字节长度(不小于位数除以8的最小整数)。 语法:length(str) 表36 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 返回值类型:Integer类型 示例:SELECT LENGTH('HELLO WORLD') 表37 查询分析结果 类型 场景1 查询语句 LENGTH('HELLO WORLD') 返回结果 11
  • substring函数 使用起始位置和长度返回子字符串。如果没有长度参数,则返回从起始位置开始的整个字符串。 语法:substring(str, start, length) 表34 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 start 起始位置。 Integer 是 length 长度。 Integer 否 返回值类型:String类型 示例:SELECT SUBSTRING('helloworld', 5), SUBSTRING('helloworld', 5, 3) 表35 查询分析结果 类型 场景1 场景2 查询语句 SUBSTRING('helloworld', 5) SUBSTRING('helloworld', 5, 3) 返回结果 oworld owo
  • substr函数 使用起始位置和长度返回子字符串。如果没有长度参数,则返回从起始位置开始的整个字符串,同substring。 语法:substr(str, start, length) 表32 参数说明 参数名称 描述 类型 是否必选 str 原始字符串 String 是 start 起始位置 Integer 是 length 长度 Integer 否 返回值类型:String类型 示例:SELECT SUBSTR('helloworld', 5), SUBSTR('helloworld', 5, 3) 表33 查询分析结果 类型 场景1 场景2 查询语句 SUBSTR ('helloworld', 5) SUBSTR ('helloworld', 5, 3) 返回结果 oworld owo
  • strpos函数 查询目标子串初次出现在字符串中的位置,如果目标子串未出现在字符串中,则返回0。 语法:strpos(str, subStr) 表30 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 subStr 填充字符。 String 是 返回值类型:Integer类型 示例:SELECT STRPOS('hello world', 'llo'), STRPOS('llo', 'hello world') 表31 查询分析结果 类型 场景1 场景2 查询语句 STRPOS('hello world', 'llo') STRPOS('llo', 'hello world') 返回结果 3 0
  • string_format函数 返回以Java的String.format方式格式化的字符串。 语法:string_format(str, Object... args) 表28 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 args 参数。 String/Integer/Long/Boolean/Double 是 返回值类型:String类型 示例:SELECT STRING_FORMAT('My name is %s and I am %d years old.', 'name', age) 表29 查询分析结果 类型 场景 查询语句 STRING_FORMAT('My name is %s and I am %d years old.', 'Tom', 25) 返回结果 My name is Tom and I am 25 years old. %d:Output integer. %f:Output floating point number. %s:Output character string. %n:Output newline character. %c:Output Characters %b:Output bool type %e:Output Exponential Type %tc:Output Date and time information %tF:Output format is YYY-MM-DD. %tr:Output in HH:MM:SS PM format 可以参考Java的String.format获取更多的细节
  • split_to_map函数 使用指定的第一个分隔符拆分字符串,然后使用指定的第二个分隔符第二次拆分字符串。返回第二次拆分后的结果。 语法:split_to_map(str, splitStr1, splitStr2) 表26 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 splitStr1 分隔符1。 String 是 splitStr2 分隔符2。 String 是 返回值类型:ARRAY类型 示例:SELECT SPLIT_TO_MAP('hello world', 'e', 'o') 表27 查询分析结果 类型 场景 查询语句 SPLIT_TO_MAP('hello world', 'e', 'o') 返回结果 ["h","ll"," w","rld"]
  • split_part函数 使用指定的分隔符拆分字符串,并返回指定位置的字符串。如果拆分后指定的位置超过数组的长度,则返回“”。 语法:split_part(str, splitStr, position) 表24 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 splitStr 分隔符。 String 是 position 需要返回的字符串的位置。 Integer 是 返回值类型:STRING类型 示例:SELECT SPLIT_PART('helloworld', 'o', 2), SPLIT_PART('helloworld', 'o', 4) 表25 查询分析结果 类型 场景1 场景2 查询语句 SPLIT_PART('helloworld','o', 2) SPLIT_PART('helloworld', 'o', 4) 返回结果 w
  • parse_long函数 将字符串转换成基于指定基数的Long型,如果未指定基数,则基于十进制对原始字符串进行转换。 语法:parse_long(str, radix) 表20 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 radix 基数。 Integer 否 返回值类型:Long类型 示例:SELECT PARSE_LONG('-1234', 8), PARSE_LONG('1234') 表21 查询分析结果 类型 场景1 场景2 查询语句 PARSE_LONG('-1234', 8) PARSE_LONG('1234') 返回结果 -668 1234
  • textcat函数 将两个字符串拼接起来,返回拼接后的结果。 语法:textcat(str1, str2) 表16 参数说明 参数名称 描述 类型 是否必选 str1 待拼接字符串1。 String 是 str2 待拼接字符串2。 String 是 返回值类型:String类型 示例:SELECT TEXTCAT('hello ', 'world') 表17 查询分析结果 类型 场景 查询语句 TEXTCAT('hello ', 'world') 返回结果 hello world
  • icontains_string函数 判断字符串是否不包含指定字符串。 语法:icontains_string(str, containsStr) 表14 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 containsStr 指定字符串。 String 是 返回值类型:Boolean类型 示例:SELECT ICONTAINS_STRING('hello world', 'llo') 表15 查询分析结果 类型 场景 查询语句 ICONTAINS_STRING('hello world', 'llo') 返回结果 false
  • contains_string函数 判断字符串是否包含指定字符串。 语法:contains_string(str, containsStr) 表12 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 containsStr 指定字符串。 String 是 返回值类型:Boolean类型 示例:SELECT CONTAINS_STRING('hello world', 'llo') 表13 查询分析结果 类型 场景 查询语句 CONTAINS_STRING('hello world', 'llo') 返回结果 true
  • repeat函数 将字符串重复指定次数。 语法:repeat(str, num) 表10 参数说明 参数名称 描述 类型 是否必选 str 原始字符串。 String 是 num 重复次数 Integer 是 返回值类型:String类型 示例:SELECT REPEAT('hello world', 2), REPEAT('hello world', 0) 表11 查询分析结果 类型 场景1 场景2 查询语句 REPEAT('hello world', 2) REPEAT('hello world', 0) 返回结果 hello worldhello world
共100000条