首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据不同的条件将选择的数字与数字键隔离?

如何根据不同的条件将选择的数字与数字键隔离?
EN

Stack Overflow用户
提问于 2019-04-16 15:09:46
回答 1查看 25关注 0票数 0

我试图从一个数字产品密钥中提取一个国家ID,该密钥有2种类型:

对于SAS EG 7.1 1.一个7-8位键,前2位-3位表示国家ID。也就是说,对于美国国家代码36,产品key= 36XXXXX。

印度国家代码121,产品key= 121XXXXX

  1. 13位键,第2,3,4位表示国家ID,即美国,产品key=X036XXXXXXXXX

为IN,产品Key= X121XXXXXXXXX

使用以下代码获取以下内容:

代码语言:javascript
复制
data want;
set have;
if length(key)>8 THEN COUNTRY_ID=substr(key), 2,3);
else COUNTRY_ID=substr(key,1,length(key)-5);
run;

它适用于第一类型的7-8位产品键,但不适用于较长的13位键。它显示了一个十进制在国家id,即美国,X036XXXX,而它应该只有36。

我需要更改数据类型吗??

EN

回答 1

Stack Overflow用户

发布于 2019-04-16 15:21:16

您应该包括一些示例数据,这样您的问题就可以准确地显示出您正在遇到的问题以及您期望的是什么,但我认为您所需要的只是将country_id转换为数字:

代码语言:javascript
复制
country_id = input(substr(key, 2, 3), best.);

您的当前代码实际上只是将三个字符'036‘作为文本值存储在country_id中;input()函数将其转换为数字。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55711377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档